Troubleshooting
This section contains information that can help you troubleshoot common problems.
List of Docker image paths
Path | Description |
|---|---|
| Root directory of the project to be analyzed |
| Directory to store the analysis results |
| Directory containing the IDE distribution |
| Directory where the IDE contains configuration |
| Used if a profile was not previously configured either via the CLI or the |
For Maven and Gradle projects, Qodana uses the following directories to access third-party libraries:
Path | Description |
|---|---|
| Maven project dependencies |
| Gradle project dependencies |
Mounting these directories saves Qodana from downloading all dependencies again while using these linters:
List of files for investigating Qodana behavior
There are several options for examining Qodana behavior using the /data/results directory:
The
/data/results/projectStructure/Modules.jsonfile lists all modules detected by Qodana. It should be identical to the list that you expect to see while opening the project in IDEA. If it is not the case, checkpom.xmlfor Maven or thebuild.gradlefile for Gradle configurations.In the
/data/results/directory, each inspection that detected a possible problem creates its own file namedID.json, whereIDis the inspection name that can be used inqodana.yamlfor including or excluding inspections. You can find the complete list of inspection IDs in the/data/results/.descriptions.jsonfile using the/groups/*/inspections/*/shortNamepattern.In
/data/results/log/idea.log, you can investigate suspicious warnings.
How to inspect a specific project directory within a repository
A typical project structure can have a directory structure similar to this:
Here, the repo/.git directory contains information that should be accessible by Qodana, and the repo/project directory contains the project that needs to be inspected by Qodana.
In this case, you can mount the repo root directory using the -v Docker option, and tell Qodana to only scan the repo/project directory using the --project-dir= Qodana option:
Error messages about missing files, packages, modules, or classes
During inspections, Qodana may report about missing files, packages, modules, or classes. In this case, you need to have your project prepared for code inspection. For example, you can create a script and configure Qodana for running it as shown in the Prepare your project section.