sonar-scoverage-plugin icon indicating copy to clipboard operation
sonar-scoverage-plugin copied to clipboard

Plugin ends with IllegalArgumentException

Open jimjaeger opened this issue 9 years ago • 3 comments

We executing the sonar-scanner-2.6.1 and 5.1.2 and the plugin end with IllegalArgumentException. WARN: could not find settings key projectname branchname.sonar.sources assuming src/main/scala. INFO: ------------------------------------------------------------------------ INFO: EXECUTION FAILURE INFO: ------------------------------------------------------------------------ INFO: Total time: 4.203s INFO: Final Memory: 44M/227M INFO: ------------------------------------------------------------------------ ERROR: Error during SonarQube Scanner execution java.lang.IllegalArgumentException: requirement failed at scala.Predef$.require(Predef.scala:207) at com.buransky.plugins.scoverage.pathcleaner.BruteForceSequenceMatcher.(BruteForceSequenceMatcher.scala:54) at com.buransky.plugins.scoverage.sensor.ScoverageSensor.createPathSanitizer(ScoverageSensor.scala:78) at com.buransky.plugins.scoverage.sensor.ScoverageSensor.analyse(ScoverageSensor.scala:66) at org.sonar.batch.phases.SensorsExecutor.executeSensor(SensorsExecutor.java:58) at org.sonar.batch.phases.SensorsExecutor.execute(SensorsExecutor.java:50) at org.sonar.batch.phases.AbstractPhaseExecutor.execute(AbstractPhaseExecutor.java:83) at org.sonar.batch.scan.ModuleScanContainer.doAfterStart(ModuleScanContainer.java:192) at org.sonar.core.platform.ComponentContainer.startComponents(ComponentContainer.java:142) at org.sonar.core.platform.ComponentContainer.execute(ComponentContainer.java:127) at org.sonar.batch.scan.ProjectScanContainer.scan(ProjectScanContainer.java:241) at org.sonar.batch.scan.ProjectScanContainer.scanRecursively(ProjectScanContainer.java:236) at org.sonar.batch.scan.ProjectScanContainer.doAfterStart(ProjectScanContainer.java:226) at org.sonar.core.platform.ComponentContainer.startComponents(ComponentContainer.java:142) at org.sonar.core.platform.ComponentContainer.execute(ComponentContainer.java:127) at org.sonar.batch.task.ScanTask.execute(ScanTask.java:47) at org.sonar.batch.task.TaskContainer.doAfterStart(TaskContainer.java:86) at org.sonar.core.platform.ComponentContainer.startComponents(ComponentContainer.java:142) at org.sonar.core.platform.ComponentContainer.execute(ComponentContainer.java:127) at org.sonar.batch.bootstrap.GlobalContainer.executeTask(GlobalContainer.java:106) at org.sonar.batch.bootstrapper.Batch.executeTask(Batch.java:119) at org.sonarsource.scanner.api.internal.batch.BatchIsolatedLauncher.execute(BatchIsolatedLauncher.java:62) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.lang.reflect.Method.invoke(Method.java:498) at org.sonarsource.scanner.api.internal.IsolatedLauncherProxy.invoke(IsolatedLauncherProxy.java:60) at com.sun.proxy.$Proxy0.execute(Unknown Source) at org.sonarsource.scanner.api.EmbeddedScanner.doExecute(EmbeddedScanner.java:240) at org.sonarsource.scanner.api.EmbeddedScanner.runAnalysis(EmbeddedScanner.java:151) at org.sonarsource.scanner.cli.Main.runAnalysis(Main.java:110) at org.sonarsource.scanner.cli.Main.execute(Main.java:72) at org.sonarsource.scanner.cli.Main.main(Main.java:60)

jimjaeger avatar Aug 10 '16 18:08 jimjaeger

Hi. I must admit that I am not going to have time to fix anything at all in the coming weeks ... a pull request with a fix is highly appreciated. Thanks

RadoBuransky avatar Aug 10 '16 18:08 RadoBuransky

I found the line that cause the issue ScoverageSensor.scala var srcOption = Option(settings.getString(project.getName() + ".sonar.sources")) I do not know why you try to use the project name. The property is described without project name. http://docs.sonarqube.org/display/SONAR/Analysis+Parameters

As result I currently have code like this: var srcOption = Option(settings.getString(project.getName() + ".sonar.sources")) if (srcOption == None){ srcOption = Option(settings.getString("sonar.sources")) } I can provide a pull request but I do not now the intention of the orginal line. I could also replace the original line, but I not sure of the intention using the project name.

Do you have a idea?

jimjaeger avatar Aug 10 '16 21:08 jimjaeger

If sonar.modules is not defined then it assumes project name as the source path. You can see the structure below: https://github.com/RadoBuransky/sonar-scoverage-plugin/blob/master/samples/sbt/multi-module/sonar-project.properties

binshi avatar Oct 16 '17 14:10 binshi