Wednesday, 15 August 2012

FindBugs Exclude filter with Ant -



FindBugs Exclude filter with Ant -

i can't findbugs take business relationship exclude filter:

in tools/findbugs-exclude.xml:

<findbugsfilter> <match> <bug pattern="wmi_wrong_map_iterator,se_comparator_should_be_serializable,rv_return_value_ignored,ei_expose_rep,ei_expose_rep2,ms_cannot_be_final,sbsc_use_stringbuffer_concatenation,se_bad_field"/> </match> </findbugsfilter>

in build.xml:

<findbugs home="${findbugs.home}" output="html" outputfile="${findbugs.output.current}" timeout="1200000" jvmargs="-xmx1024m" effort="max" excludefilter="${basedir}/tools/findbugs-exclude.xml"> <auxclasspath> <fileset dir="${basedir}/lib"> <include name="**/*.jar" /> </fileset> </auxclasspath> <sourcepath path="${basedir}/sources" /> <class location="${classes}" /> <fileset dir="${basedir}/build/dist"> <include name="*.jar" /> </fileset> </findbugs>

findbugs generates study includes everything.

i've had exact same problem , due typo in findbugs-exclude.xml file path.

try running ant in verbose mode this:

c:\workspace\example> ant -verbose

you'll notice in output:

findbugs: [findbugs] executing findbugs findbugstask ant task [findbugs] running findbugs... [findbugs] executing 'c:\workspace\opt\java\jdk1.8.0_72\jre\bin\java.exe' arguments: [findbugs] '-xmx1024m' [findbugs] '-dfindbugs.hostapp=fbanttask' [findbugs] '-dfindbugs.home=c:\workspace\opt\findbugs-3.0.1' [findbugs] '-classpath' [findbugs] 'c:\workspace\opt\findbugs-3.0.1\lib\findbugs.jar' [findbugs] 'edu.umd.cs.findbugs.findbugs2' [findbugs] '-sortbyclass' [findbugs] '-timestampnow' [findbugs] '-xml:withmessages' [findbugs] '-exclude' [findbugs] 'c:\workspace\example\tools\findbugs-exclude.xml' [findbugs] '-auxclasspathfrominput' [findbugs] '-sourcepath' [findbugs] 'c:\workspace\example\src' [findbugs] '-outputfile' [findbugs] 'c:\workspace\example\output\findbugs.xml' [findbugs] '-exitcode' [findbugs] 'c:\workspace\example\cls'

if -exclude argument missing add together next build.xml see if path correct:

<available property="file.exists" file="${basedir}/tools/findbugs-exclude.xml"/> <echo>${basedir}/tools/findbugs-exclude.xml exists = ${file.exists}</echo>

because findbugstask.java contains check see if excludefilter file exists.

public void setexcludefilter(file filterfile) { if (filterfile != null && filterfile.length() > 0) { this.excludefile = filterfile; } else { this.excludefile = null; } }

ant findbugs

No comments:

Post a Comment