2
votes

I have a Play! web plugin project, which I am compiling and running JaCoCo on. After this, I want to run a Sonar analysis using Sonar runner. We have a SonarQube 4.0 server up and running, and I have installed Sonar Runner 2.3. I'm running all of my build related tasks on a VM with a local Bamboo remote agent.

I get the following error towards the end of running "sonar-runner -X -e"

14:05:14.998 INFO  - Analysing <path-to>/jacoco.exec
06-Dec-2013 17:05:15    14:05:15.008 DEBUG - Release semaphore on project : org.sonar.api.resources.Project@5ca267af[id=52670,key=work.stuff:Web-Plugin,qualifier=TRK], with key batch-work.stuff:Web-Plugin
06-Dec-2013 17:05:15    14:05:15.401 DEBUG - To prevent a memory leak, the JDBC Driver [com.mysql.jdbc.Driver] has been forcibly deregistered
06-Dec-2013 17:05:15    INFO: ------------------------------------------------------------------------
06-Dec-2013 17:05:15    INFO: EXECUTION FAILURE
06-Dec-2013 17:05:15    INFO: ------------------------------------------------------------------------
06-Dec-2013 17:05:15    Total time: 6:31.254s
06-Dec-2013 17:05:15    ERROR: Error during Sonar runner execution
06-Dec-2013 17:05:15    org.sonar.runner.impl.RunnerException: Unable to execute Sonar
06-Dec-2013 17:05:15            at org.sonar.runner.impl.BatchLauncher$1.delegateExecution(BatchLauncher.java:91)
06-Dec-2013 17:05:15            at org.sonar.runner.impl.BatchLauncher$1.run(BatchLauncher.java:75)
06-Dec-2013 17:05:15            at java.security.AccessController.doPrivileged(Native Method)
06-Dec-2013 17:05:15            at org.sonar.runner.impl.BatchLauncher.doExecute(BatchLauncher.java:69)
06-Dec-2013 17:05:15            at org.sonar.runner.impl.BatchLauncher.execute(BatchLauncher.java:50)
06-Dec-2013 17:05:15            at org.sonar.runner.api.EmbeddedRunner.doExecute(EmbeddedRunner.java:102)
06-Dec-2013 17:05:15            at org.sonar.runner.api.Runner.execute(Runner.java:90)
06-Dec-2013 17:05:15            at org.sonar.runner.Main.executeTask(Main.java:70)
06-Dec-2013 17:05:15            at org.sonar.runner.Main.execute(Main.java:59)
06-Dec-2013 17:05:15            at org.sonar.runner.Main.main(Main.java:41)
06-Dec-2013 17:05:15    Caused by: java.lang.NullPointerException
06-Dec-2013 17:05:15            at org.sonar.plugins.jacoco.ExecutionDataVisitor.visitClassExecution(ExecutionDataVisitor.java:48)
06-Dec-2013 17:05:15            at org.jacoco.core.data.ExecutionDataReader.readExecutionData(ExecutionDataReader.java:149)
06-Dec-2013 17:05:15            at org.jacoco.core.data.ExecutionDataReader.readBlock(ExecutionDataReader.java:113)
06-Dec-2013 17:05:15            at org.jacoco.core.data.ExecutionDataReader.read(ExecutionDataReader.java:87)
06-Dec-2013 17:05:15            at org.sonar.plugins.jacoco.AbstractAnalyzer.readExecutionData(AbstractAnalyzer.java:133)
06-Dec-2013 17:05:15            at org.sonar.plugins.jacoco.AbstractAnalyzer.analyse(AbstractAnalyzer.java:106)
06-Dec-2013 17:05:15            at org.sonar.plugins.jacoco.JaCoCoSensor.analyse(JaCoCoSensor.java:54)
06-Dec-2013 17:05:15            at org.sonar.batch.phases.SensorsExecutor.execute(SensorsExecutor.java:72)
06-Dec-2013 17:05:15            at org.sonar.batch.phases.PhaseExecutor.execute(PhaseExecutor.java:114)
06-Dec-2013 17:05:15            at org.sonar.batch.scan.ModuleScanContainer.doAfterStart(ModuleScanContainer.java:150)
06-Dec-2013 17:05:15            at org.sonar.api.platform.ComponentContainer.startComponents(ComponentContainer.java:92)
06-Dec-2013 17:05:15            at org.sonar.api.platform.ComponentContainer.execute(ComponentContainer.java:77)
06-Dec-2013 17:05:15            at org.sonar.batch.scan.ProjectScanContainer.scan(ProjectScanContainer.java:190)
06-Dec-2013 17:05:15            at org.sonar.batch.scan.ProjectScanContainer.scanRecursively(ProjectScanContainer.java:185)
06-Dec-2013 17:05:15            at org.sonar.batch.scan.ProjectScanContainer.doAfterStart(ProjectScanContainer.java:178)
06-Dec-2013 17:05:15            at org.sonar.api.platform.ComponentContainer.startComponents(ComponentContainer.java:92)
06-Dec-2013 17:05:15    Final Memory: 27M/664M
06-Dec-2013 17:05:15    INFO: ------------------------------------------------------------------------
06-Dec-2013 17:05:15            at org.sonar.api.platform.ComponentContainer.execute(ComponentContainer.java:77)
06-Dec-2013 17:05:15            at org.sonar.batch.scan.ScanTask.scan(ScanTask.java:58)
06-Dec-2013 17:05:15            at org.sonar.batch.scan.ScanTask.execute(ScanTask.java:45)
06-Dec-2013 17:05:15            at org.sonar.batch.bootstrap.TaskContainer.doAfterStart(TaskContainer.java:82)
06-Dec-2013 17:05:15            at org.sonar.api.platform.ComponentContainer.startComponents(ComponentContainer.java:92)
06-Dec-2013 17:05:15            at org.sonar.api.platform.ComponentContainer.execute(ComponentContainer.java:77)
06-Dec-2013 17:05:15            at org.sonar.batch.bootstrap.BootstrapContainer.executeTask(BootstrapContainer.java:155)
06-Dec-2013 17:05:15            at org.sonar.batch.bootstrap.BootstrapContainer.doAfterStart(BootstrapContainer.java:143)
06-Dec-2013 17:05:15            at org.sonar.api.platform.ComponentContainer.startComponents(ComponentContainer.java:92)
06-Dec-2013 17:05:15            at org.sonar.api.platform.ComponentContainer.execute(ComponentContainer.java:77)
06-Dec-2013 17:05:15            at org.sonar.batch.bootstrapper.Batch.startBatch(Batch.java:92)
06-Dec-2013 17:05:15            at org.sonar.batch.bootstrapper.Batch.execute(Batch.java:74)
06-Dec-2013 17:05:15            at org.sonar.runner.batch.IsolatedLauncher.execute(IsolatedLauncher.java:45)
06-Dec-2013 17:05:15            at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
06-Dec-2013 17:05:15            at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
06-Dec-2013 17:05:15            at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
06-Dec-2013 17:05:15            at java.lang.reflect.Method.invoke(Method.java:601)
06-Dec-2013 17:05:15            at org.sonar.runner.impl.BatchLauncher$1.delegateExecution(BatchLauncher.java:87)
06-Dec-2013 17:05:15            ... 9 more
06-Dec-2013 17:05:16    Failing task since return code of [<bamboo-stuff>-ScriptBuildTask-4543364793727960070.sh] was 1 while expected 0

My sonar-project.properties file looks like this: It sits at the head of my project tree and all of the paths I'm using have been validated.

# Required metadata
sonar.projectKey=<work.stuff>:Web-Plugin
sonar.projectName=Web-Plugin
sonar.projectVersion=0.0.1-SNAPSHOT

# Paths to source directories.
# Paths are relative to the sonar-project.properties file. Replace "\" by "/" on Windows.
# Do not put the "sonar-project.properties" file in the same directory with the source code.
# (i.e. never set the "sonar.sources" property to ".")
sonar.sources=app

# The value of the property must be the key of the language.
sonar.language=java

#----- JaCoCo Stuff
sonar.jacoco.reportPath=target/scala-2.10/jacoco/jacoco.exec
#----- JUnit test Stuff
sonar.junit.reportsPath=target/test-reports/

#----- Binaries and libraries information
sonar.binaries=target/scala-2.10/classes
sonar.libraries=<tons of relative paths to relevant .jars>

I've been getting this error with and without the sonar.libraries declaration.

1

1 Answers

0
votes

Because my reputation is < 50 i only can post answers and no comments...

Have you ever done something with you sonar runner before that worked? If not, you should check your sonar-runner.properties and fill in the needed things. For example in my company we filled in the following things (using oracle databand, or jbdc):

sonar.host.url, sonar.jbdc.url, sonar.jdbc.username, sonar.jdbc.password, sonar.jdbc.driver, sonar.login, sonar.password, sonar.sourceEncoding, ...