我正在尝试让FindBugs ant任务在生成的报告中包含源信息。
<findbugs home="${findbugs.home}" output="xml" outputFile="${basedir}/findbugs/findbugs-${package.basename}.xml" excludeFilter="${basedir}/findbugsExclude.xml" jvmargs="-Xmx1048m">
<sourcePath path="${package.srcdir}" />
<class location="${package}" />
<auxClasspath>
<path refid="findbugs.auxinput" />
</auxClasspath>
</findbugs>
就我所见,$ {package.srcdir}属性的值是正确的;它指向源树的根,以便$ {package.srcdir} /com/mydomain/MyClass.java是源文件的路径。
生成的报告包含一个<SrcDir>
元素,该元素与给予ant任务的源路径相匹配,因此显然{11}元素由findbugs任务处理。尽管如此,XML报告中的包统计信息仅包含<sourcePath>
。
我错过了一些明显的东西吗?
答案 0 :(得分:5)
我遇到了同样的问题。
可能你的代码是用“-g:none”编译的。 如果你使用ant's&lt; javac&gt;任务必须设置&lt; javac debug = true&gt;。
正确设置源路径(如findbugs手册中所述)到顶级软件包的封闭文件夹(在eclipse项目中的src文件夹中),您应该会成功。
尽管如此,在某些情况下,findbugs无法确定合适的源代码行。
欢呼声, 基督教
答案 1 :(得分:-1)
尝试这样的回声(第二名):
<echo message="Finding Bugs From ${package.srcdir}"/>
我怀疑package.srcdir尚未设置为值。尝试使用
<sourcePath path="${basedir}/src/com" />
或包含源文件的目录。
如果解答了您的问题,请不要忘记将答案标记为已接受的答案。