1. Add the following target to your customTargets.xml (replace "com.yourcompany" with your package/plug-in prefix):
2. Create input filter file (findbugs-filter.xml):
3. Invoke "findbugs" target from the "prePackage" target:
4. Make sure environment variable FINDBUGS_HOME points to the installation of FindBugs.
5. (For Hudson users) Install, and configure FindBugs plug-in to get the fancy "bugs" trend graph :-)
5 comments:
Hi Michael,
Instead of doing this in the customTargets.xml, individual bundles can use customBuildCallbacks.xml. This xml file provides a number of callbacks at various points of building your plug-in.
If you override the post.compile.@dot (post.compile.library.jar for nested jars) target, the .class files will be on disk located at ${target.folder}. The source code is under ${basedir} (the root of your bundle) and you have a reference to the classpath used to compile the classes (refid="@dot.classpath" or "library.jar.classpath").
This saves you from unzipping all the jars from the p2 repo. Also, it works during both headless build and export from the UI.
Sorry, I also forgot there are references to the specific source folders in each library using ${source.folder1}, ${source.folder2), ...
@aniefer, I should try this approach as well. Thanks!
I'm currently trying to integrate FIndbugs in our PDE build following your post and the comment of Andrew.
Did you already tried with his advice?
Regards
@Scratsh, no I haven't tried. My simple solution works well for me, though not very optimized.
Post a Comment