Error during execution of SonarLint analysis - java.lang.IllegalStateException: Cobol COPYBOOK directory doesn't exist. Please update Sonar configuration

SonarQube 7.9.1
SonarLint for Eclipse 4.1.0.201901311043

I am using SonarLint with Eclipse and facing this exception. SonarLint is not able to find the referenced files. It is looking at wrong path and I do not know how to point it to the right location.

Following is the source code structure - files are in source and include folders.

source structure

Source files inside “source” folder refers to files in “includes” folder.

When analysis is run on a file in “source” folder, it fails with following exception:

SonarLint is trying to find the referenced file in “\source\includes” folder, while the file is available in “\includes” folder.

How can this be fixed ? Can it be configured through org.sonarlint.eclipse.core.prefs file ?

Hi,

What is your IDE? The resolution of copybook location is not implemented directly in SonarLint, but by an add-on developed either by IBM (IDz) or Compuware (Topaz). We contributed to the feature by exposing the required API, but we don’t have access to their source code, so this is hard for us to investigate. So you may have to open a support ticket on your IDE editor side.

Hi @Julien_HENRY, I am using Microfocus Enterprise Developer IDE. I also tried passing sonar.cobol.copy.directories property during SonarLint analysis but it made no effect.
Will reach out to Microfocus.

Is the property sonar.cobol.copy.directories also defined in SonarQube?

Yes @Julien_HENRY it is defined there too. With SonarQube there is no problem, scan works fine there with the same source code structure.

How do you do that? What is the value you have set?

Right-click on the Project in editor, select Properties. Then go to SonarLint Analyzer Properties and define the value.

And this in-fact fixed the problem after a few trials with the path value. Thanks for the help !

image

3 Likes