Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.
NameJava Ecosystem
Latest version2.1.4 ( 4 September 2013 25 march 2014 )
Requires SonarQube version34.62 or higher ( check version compatibility )
DownloadJavaEcosystem-2.1.4.zip
LicenseGNU LGPL 3
DevelopersSonarSource
Issue trackerhttp://jira.codehaus.org/browse/SONARJAVA
Sourceshttps://github.com/SonarSource/sonar-java
Tip
titleLive example

If you want to see a live example of the capabilities of the Java Ecosystem, you can have a look at SonarQube on SonarQube.

Description / Features

The Java Ecosystem is a set of plugins used to monitor the quality of Java projects within SonarQube. The following plugins are included:

Other optional plugins are available for download: AndroidCobertura, EmmaCloverClirr and fb-contrib.

It is compatible with the SonarQube Eclipse plugin to track issues while coding. It is also compatible with the Issues Report plugin to run pre-commit local analysis

On top of the coding rules provided by the SonarQube engine, you can activate rules from CheckstyleFindBugsPMDClirr, 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.

Installation

By default the Java Ecosystem is provided with SonarQube. You  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.

Usage

Run a SonarQube Analysis

...

Sample projects for each analyzer are available on GitHub that can be browsed or downloaded: /projects/languages/java

...

  • The source directory must be set to the directory containing the top parent package. For  For example, if your directory structure is 'src/main/java/com/mycompany/...', the source directory must be set to 'src/main/java'.
  • The source directory tree has to must match the package declaration. For  For example, the following class:
Code Block
titleMyClass.java
linenumberstrue
languagejava
package com.mycompany.mypackage;
...

must be located in the following directory: [mySourceDirectory]/com/mycompany/mypackage/MyClass.java. Otherwise  Otherwise you would get such an error like below while running your analysis:

Code Block
titleLog
languagenone
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 CoberturaEmma or Clover can also be used.

...

Change Log

JIRA Issues
anonymoustrue
titleVersion 1.4
renderModestatic
width900
columnstype;key;summary;priority
urlhttp://jira.codehaus.org/sr/jira.issueviews:searchrequest-xml/temp/SearchRequest.xml?fixfor=19124&pid=12830&sorter/field=priority&sorter/order=DESC&tempMax=1000

 

JIRA Issues
anonymoustrue
titleVersion 1.3
renderModestatic
width900
columnstype;key;summary;priority
urlhttp://jira.codehaus.org/sr/jira.issueviews:searchrequest-xml/temp/SearchRequest.xml?fixfor=19056&pid=12830&sorter/field=priority&sorter/order=DESC&tempMax=1000

 

JIRA Issues
anonymoustrue
titleVersion 1.2
renderModestatic
width900
columnstype;key;summary;priority
urlhttp://jira.codehaus.org/sr/jira.issueviews:searchrequest-xml/temp/SearchRequest.xml?fixfor=18956&pid=12830&sorter/field=priority&sorter/order=DESC&tempMax=1000

 

...

Upgrade Notes

Version 2.0

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:

Image Added

See http://www.sonarqube.org/already-158-checkstyle-and-pmd-rules-deprecated-by-sonarqube-java-rules/ for more details.

Version 1.5

  • Property sonar.surefire.reportsPath has been removed and replaced by sonar.junit.reportsPath.