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)
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
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?
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