Quickly benefit from Sonar, an open-source Code Quality Management Platform based on many well known analysis tools like Checkstyle, PMD, Findbugs, Cobertura, ....
Once your technical project is configured in Hudson, just activate the Sonar plugin in order to analyze your source code according to the following quality axes :
- Respect of coding rules violations
- Density of documented API
- Density of duplicated Code
- Level of code coverage by Unit Tests
- Density of potential bugs
- Complexity distribution
Why using Sonar ?
- There isn't any necessary configuration for Maven project and a basic one for Ant project
- All those quality axes are displayed in one page : the project dashboard
- You can easily drill down from the measure values to the module (Maven), package and classes (source code viewer)
Sonar drives many tools including among others :
- Static analysis : Checkstyle, PMD/CPD, Findbugs, JavaNCSS.
- Dynamic analysis for unit tests : Cobertura, Clover, Surefire.
Screenshots
All projects
Project dashboard
Configuration
- Install and start the Sonar server
- Activate the Sonar plugin from the Hudson Plugin Manager
- Define a Sonar installation from the Configure System page. Some advanced parameters are used when overriding default Sonar configuration.
- Activate Sonar on jobs from the "Post-build actions" section.
- Build your project
We recommend to execute Sonar at the most on nightly builds. It's useless to activate it on continuous builds.
- View your project in Sonar application (default is http://localhost:9000)
Release notes
See the roadmap.
1.0 (May 20th, 2009)
Compatible with Sonar 1.8 and later. For older versions, please use 0.2.
- SONARPLUGINS-8 Execute from slaves
- SONARPLUGINS-10 Only run Sonar on nightly build
- SONARPLUGINS-11 Hudson plugin i18n (currently English and French)
- SONARPLUGINS-44 OutOfMemory during FindBugs run
- SONARPLUGINS-73 Plugin ignores "Root POM" parameter
- SONARPLUGINS-14 Clover call runs out of pergen space and no possiblity to increase in hudson
- SONARPLUGINS-16 Add a way to specify Maven options to be used by Hudson in order to launch Sonar plugin
- SONARPLUGINS-18 Do not display project specific configuration on maven jobs
- SONARPLUGINS-19 Automatically set maven batch mode
- SONARPLUGINS-49 Synchronize Sonar plugin with the build
- SONARPLUGINS-78 Launch Sonar Maven plugin with the new "mvn sonar:sonar" command (not compatible with Sonar version previous to 1.8 )
0.2
Compatible with Sonar versions <= 1.8.
- SONAR-326 : manage jobs that are not built with maven2
- SONAR-325 : use the configured maven installation
0.1
- Initial release
Support
Please post comments and questions on the Sonar mailing-list. Issues are listed in JIRA.