I recently change my SONARQUBE configuration:
Before:
- SonarQube 5.1
- Java plugin 3.0
- PMD plugin 2.3
- Checkstyle plugin 2.2
- FindBugs plugin 3.2
- Issue Assign plugin 1.6
After:
- SonarQube 5.1
- Java plugin 3.3
- PMD plugin 2.4.1
- Checkstyle plugin 2.3
- FindBugs plugin 3.2
- Issue Assign plugin 1.6
On new configuration I have enabled all new rules brought from 3.1 to 3.2 Java plugin version.
The analysis batch fails at IssueTracking Decorating stage of the batch analysis:
[INFO] [08:37:25.503] Compare over 1 days (2015-05-31, analysis of Fri May 29 21:49:21 BST 2015)
[INFO] [08:37:25.504] Compare over 7 days (2015-05-25, analysis of Mon May 25 08:07:18 BST 2015)
[INFO] [08:37:25.505] Compare over 30 days (2015-05-02, analysis of Sat May 02 00:19:16 BST 2015)
[INFO] [08:37:25.506] Compare to date 2014-04-01 (analysis of 2014-06-06)
[INFO] [08:37:25.741] Execute decorators...
[INFO] [08:37:25.744] Issue 2c785d7e-3a5b-4282-9c5b-39bd4d645a81 won't be auto-assigned. Reason: NOT_NEW
[INFO] [08:37:25.744] Issue ebcf237e-1bc5-407c-9d84-1224f029b7f6 won't be auto-assigned. Reason: BEFORE_CUTOFF_DATE
[INFO] [08:37:25.748] Issue 01da957a-a184-4baa-8adf-15984869b1fc won't be auto-assigned. Reason: BEFORE_CUTOFF_DATE
[INFO] [08:37:25.749] Issue 4fe8ef3e-de23-4c59-8846-21b4cd5a875b won't be auto-assigned. Reason: BEFORE_CUTOFF_DATE
[INFO] [08:37:25.749] Issue 6684e397-09ce-488f-8a10-4e5c1eb40492 won't be auto-assigned. Reason: BEFORE_CUTOFF_DATE
[INFO] [08:37:25.749] Issue 6abbb736-898d-4592-bc05-4a52062c57c8 won't be auto-assigned. Reason: BEFORE_CUTOFF_DATE
[INFO] [08:37:25.749] Issue 7375deed-09a7-45b1-8184-40f0b4a4666f won't be auto-assigned. Reason: BEFORE_CUTOFF_DATE
[INFO] [08:37:25.749] Issue 90d82183-edf0-4854-b096-e9a9105af3ad won't be auto-assigned. Reason: BEFORE_CUTOFF_DATE
[INFO] [08:37:25.750] Issue 9170b68c-909b-40c7-aea1-571d8e99ac74 won't be auto-assigned. Reason: BEFORE_CUTOFF_DATE
[INFO] [08:37:25.750] Issue 95221ab3-aa9f-4dc3-9a03-11ddb7dea082 won't be auto-assigned. Reason: BEFORE_CUTOFF_DATE
[ERROR] Failed to execute goal org.codehaus.mojo:sonar-maven-plugin:2.6:sonar (default-cli) on project myapp: Fail to decorate 'org.sonar.api.resources.File@7d30e345[key=src/main/java/com/mycompany/EquityAccountingHandler.java,path=src/main/java/com/mycompany/EquityAccountingHandler.java,filename=EquityAccountingHandler.java,language=Java]': 489 -> [Help 1]
org.apache.maven.lifecycle.LifecycleExecutionException: Failed to execute goal org.codehaus.mojo:sonar-maven-plugin:2.6:sonar (default-cli) on project myapp: Fail to decorate 'org.sonar.api.resources.File@7d30e345[key=src/main/java/com/mycompany/EquityAccountingHandler.java,path=src/main/java/com/mycompany/EquityAccountingHandler.java,filename=EquityAccountingHandler.java,language=Java]'
at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:216)
at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:153)
at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:145)
at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject(LifecycleModuleBuilder.java:116)
at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject(LifecycleModuleBuilder.java:80)
at org.apache.maven.lifecycle.internal.builder.singlethreaded.SingleThreadedBuilder.build(SingleThreadedBuilder.java:51)
at org.apache.maven.lifecycle.internal.LifecycleStarter.execute(LifecycleStarter.java:120)
at org.apache.maven.DefaultMaven.doExecute(DefaultMaven.java:355)
at org.apache.maven.DefaultMaven.execute(DefaultMaven.java:155)
at org.apache.maven.cli.MavenCli.execute(MavenCli.java:584)
at org.apache.maven.cli.MavenCli.doMain(MavenCli.java:216)
at org.apache.maven.cli.MavenCli.main(MavenCli.java:160)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:606)
at org.codehaus.plexus.classworlds.launcher.Launcher.launchEnhanced(Launcher.java:289)
at org.codehaus.plexus.classworlds.launcher.Launcher.launch(Launcher.java:229)
at org.codehaus.plexus.classworlds.launcher.Launcher.mainWithExitCode(Launcher.java:415)
at org.codehaus.plexus.classworlds.launcher.Launcher.main(Launcher.java:356)
Caused by: org.apache.maven.plugin.MojoExecutionException: Fail to decorate 'org.sonar.api.resources.File@7d30e345[key=src/main/java/com/mycompany/EquityAccountingHandler.java,path=src/main/java/com/mycompany/EquityAccountingHandler.java,filename=EquityAccountingHandler.java,language=Java]'
at org.codehaus.mojo.sonar.bootstrap.ExceptionHandling.handle(ExceptionHandling.java:41)
at org.codehaus.mojo.sonar.bootstrap.RunnerBootstraper.execute(RunnerBootstraper.java:139)
at org.codehaus.mojo.sonar.SonarMojo.execute(SonarMojo.java:132)
at org.apache.maven.plugin.DefaultBuildPluginManager.executeMojo(DefaultBuildPluginManager.java:132)
at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:208)
... 19 more
Caused by: org.sonar.api.utils.SonarException: Fail to decorate 'org.sonar.api.resources.File@7d30e345[key=src/main/java/com/mycompany/EquityAccountingHandler.java,path=src/main/java/com/mycompany/EquityAccountingHandler.java,filename=EquityAccountingHandler.java,language=Java]'
at org.sonar.batch.phases.DecoratorsExecutor.executeDecorator(DecoratorsExecutor.java:104)
at org.sonar.batch.phases.DecoratorsExecutor.decorateResource(DecoratorsExecutor.java:87)
at org.sonar.batch.phases.DecoratorsExecutor.decorateResource(DecoratorsExecutor.java:79)
at org.sonar.batch.phases.DecoratorsExecutor.decorateResource(DecoratorsExecutor.java:79)
at org.sonar.batch.phases.DecoratorsExecutor.execute(DecoratorsExecutor.java:71)
at org.sonar.batch.phases.DatabaseModePhaseExecutor.execute(DatabaseModePhaseExecutor.java:127)
at org.sonar.batch.scan.ModuleScanContainer.doAfterStart(ModuleScanContainer.java:264)
at org.sonar.api.platform.ComponentContainer.startComponents(ComponentContainer.java:92)
at org.sonar.api.platform.ComponentContainer.execute(ComponentContainer.java:77)
at org.sonar.batch.scan.ProjectScanContainer.scan(ProjectScanContainer.java:235)
at org.sonar.batch.scan.ProjectScanContainer.scanRecursively(ProjectScanContainer.java:230)
at org.sonar.batch.scan.ProjectScanContainer.scanRecursively(ProjectScanContainer.java:228)
at org.sonar.batch.scan.ProjectScanContainer.doAfterStart(ProjectScanContainer.java:220)
at org.sonar.api.platform.ComponentContainer.startComponents(ComponentContainer.java:92)
at org.sonar.api.platform.ComponentContainer.execute(ComponentContainer.java:77)
at org.sonar.batch.scan.ScanTask.scan(ScanTask.java:57)
at org.sonar.batch.scan.ScanTask.execute(ScanTask.java:45)
at org.sonar.batch.bootstrap.TaskContainer.doAfterStart(TaskContainer.java:135)
at org.sonar.api.platform.ComponentContainer.startComponents(ComponentContainer.java:92)
at org.sonar.api.platform.ComponentContainer.execute(ComponentContainer.java:77)
at org.sonar.batch.bootstrap.GlobalContainer.executeTask(GlobalContainer.java:158)
at org.sonar.batch.bootstrapper.Batch.executeTask(Batch.java:95)
at org.sonar.batch.bootstrapper.Batch.execute(Batch.java:67)
at org.sonar.runner.batch.IsolatedLauncher.execute(IsolatedLauncher.java:48)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:606)
at org.sonar.runner.impl.BatchLauncher$1.delegateExecution(BatchLauncher.java:87)
at org.sonar.runner.impl.BatchLauncher$1.run(BatchLauncher.java:75)
at java.security.AccessController.doPrivileged(Native Method)
at org.sonar.runner.impl.BatchLauncher.doExecute(BatchLauncher.java:69)
at org.sonar.runner.impl.BatchLauncher.execute(BatchLauncher.java:50)
at org.sonar.runner.api.EmbeddedRunner.doExecute(EmbeddedRunner.java:102)
at org.sonar.runner.api.Runner.execute(Runner.java:100)
at org.codehaus.mojo.sonar.bootstrap.RunnerBootstraper.execute(RunnerBootstraper.java:135)
... 22 more
Caused by: java.lang.ArrayIndexOutOfBoundsException: 489
at org.sonar.batch.issue.tracking.FileHashes.getHash(FileHashes.java:89)
at org.sonar.batch.issue.tracking.IssueTracking.setChecksumOnNewIssues(IssueTracking.java:66)
at org.sonar.batch.issue.tracking.IssueTracking.track(IssueTracking.java:51)
at org.sonar.batch.issue.tracking.IssueTrackingDecorator.doDecorate(IssueTrackingDecorator.java:139)
at org.sonar.batch.issue.tracking.IssueTrackingDecorator.decorate(IssueTrackingDecorator.java:113)
at org.sonar.batch.phases.DecoratorsExecutor.executeDecorator(DecoratorsExecutor.java:96)
... 57 more
Any idea what happened?
EDIT:
I removed new rule checkstyle:com.puppycrawl.tools.checkstyle.checks.javadoc.SummaryJavadocCheck brought by checkstyle 2.3 plugin version. The analysis works correctly now.
The issue is due to some Checkstyle rules. If you remove them, this solves the problem.
For further reference: http://sonarqube.15.x6.nabble.com/ArrayIndexOutOfBoundsException-while-decorating-Java-file-td5034646.html