|Latest version||2.1 ( 25 march 2014 )|
|Requires SonarQube version||4.2 or higher ( check version compatibility )|
|License||GNU LGPL 3|
If you want to see a live example of the capabilities of the Java Ecosystem, you can have a look at SonarQube on SonarQube.
The Java Ecosystem is a set of plugins used to monitor the quality of Java projects within SonarQube.
On top of the coding rules provided by the SonarQube engine, you can activate rules from Checkstyle, FindBugs, PMD, Clirr, and fb-contrib. However, we highly recommend that you limit your Quality Profiles to from the SonarQube engine because we believe they are faster, more accurate (fewer false positives and false negatives), and more usable (they have better descriptions, etc). Read this blog post for more details.
By default the Java Ecosystem is provided with SonarQube. You can update it from the Update Center or download the latest release from this page header. Don't forget to check the upgrade notes.
To run an analysis of your Java project, you can use the following analyzers:
Sample projects for each analyzer are available on GitHub that can be browsed or downloaded: /projects/languages/java
package com.mycompany.mypackage; ...
must be located in the following directory: [mySourceDirectory]/com/mycompany/mypackage/MyClass.java. Otherwise you would get an error like below while running your analysis:
Exception in thread "main" org.sonar.batch.bootstrapper.BootstrapException: org.sonar.squid.api.AnalysisException: Got an exception - org.sonar.squid.api.AnalysisException: The source directory does not correspond to the package declaration com.mycompany.mypackage, file : ..\src\MyClass.java ...
The default code coverage engine for unit tests can be set in Settings > General Settings > Java > Code coverage plugin property.
By default the code coverage engine is JaCoCo, but Cobertura or Clover can also be used.
To deal with unit tests and code coverage, see Code Coverage by Unit Tests for Java Project tutorial.
To deal with integration tests and code coverage, see Code Coverage by Integration Tests for Java Project tutorial.
This version no longer includes the Checkstyle and PMD plugins. Therefore, you should install those two plugins if you're still using some of their rules.
All the valuable rules from PMD and Checkstyle were rewritten based on our own SSLR technology. These rules are now available in the SonarQube repository. Deprecated rules from PMD and Checkstyle are flagged as so and their replacement is stated in the rule description:
See http://www.sonarqube.org/already-158-checkstyle-and-pmd-rules-deprecated-by-sonarqube-java-rules/ for more details.
sonar.surefire.reportsPathhas been removed and replaced by