Hi all,
I have been working with David in order to integrate his work for doing static bug analysis with findbugs and have a hudson job set up that will run the findbug report nightly. All the configuration lives in a profile so there will hopefully be minimal effect on the existing build.
Here is an example of a report from hudson.
http://hudson.opengeo.org/hudson/job/geoserver-trunk-findbugs/1/findbugsResult/
The current configuration being used is not filtering out anything, naturally we will refine this as things move forward.
The job is setup to run nightly and wont send any email notifications. If people are interested in a nightly or weekly email we can set that up but i think emailing the is premature at this point, as least until we have somewhat of a refined configuration that doesn’t emit so many warnings.
If you want to run the findbugs analysis locally there is a profile called “findbugs” that will enable it. To get around issues in the findbugs plugin to run the analysis also involves specifying the path to a “filter” file which lists bug types to exclude from the analysis. There are currently two files living in src/maven/findbugs:
- findbugs-excludeAll.xml
Will exclude all issues, this is designed to be run locally by developers who will modify the file removing issues they want to flag. This will allow for easily isolating a particular type of issue
- findbugs-excludeNone.xml
Will exclude nothing, this is currently what the configuration the build server is using.
An example of running an analysis:
mvn -P findbugs -Dfindbugs.excludeFilterFile=/full/path/to/your/checkout/src/maven/findbugs/findbugs-excludeNone.xml findbugs:findbugs
The above assumes the source tree has previously been compiled, the findbugs goal won’t compile any code.
-Justin
–
Justin Deoliveira
OpenGeo - http://opengeo.org
Enterprise support for open source geospatial.