gpt4 book ai didi

java - FindBugs 扫描外部 jar

转载 作者:行者123 更新时间:2023-11-29 03:35:19 25 4
gpt4 key购买 nike

我正在使用以下链接创建一个 ant 脚本来在 Web 应用程序上运行 findbugs: Chapter 6. Using the FindBugs™ Ant task

我正在将 auxClasspath 参数设置到我的 jars 文件夹。

但是当我在命令提示符下使用 ant findbugs 运行任务时,它需要很长时间(~45 分钟)并且输出 xml 包含对 auxClasspath 中的 jars 的分析 以及我的源代码。

我只想分析我的源代码。

这是我的 build.xml 中的代码:

<taskdef name="findbugs" classname="edu.umd.cs.findbugs.anttask.FindBugsTask"/>
<property name="findbugs.home" value="C:/Software/FindBugs" />
<target name="findbugs" >
<echo message="Finding Bugs From ${basedir}/src/java"/>
<findbugs home="${findbugs.home}"
output="xml:withMessages"
outputFile="${basedir}\findbugs.xml"
stylesheet="fancy-hist.xsl"
timeout="6000000"
jvmargs="-Xmx1200m">
<auxClasspath path="${basedir}/Jars/*.jar" />
<sourcePath path="${basedir}/src/java"/>
<class location="${basedir}/build/myApp-1.0.jar" />
</findbugs>
</target>

我已将 findbugs-ant.jar 添加到我的 ant 安装库中。findbugs 目录存在。

其他信息:
IDE: Netbeans 7.3
操作系统:Microsoft Windows XP
Ant 版本:1.8.4
找bug版本:2.0.2

更新

如果我省略这一行:

<auxClasspath path="${basedir}/Jars/*.jar" />

我得到了我想要的输出(即只分析了我的源代码)。但它会发出警告:

[findbugs] The following classes needed for analysis were missing:
[findbugs] javax.servlet.http.HttpServlet
[findbugs] javax.servlet.http.HttpServletRequestWrapper
[list continues]....

任何想法,为什么发现错误正在分析它不应该分析的 jar (根据文档)

最佳答案

我试图跟踪源代码中使用了哪些 Jar。

在 findbugs xml 输出中,我发现了一行:${basedir}\Jars\antlr-2.7.2.jar

findbugs 分析报告显示所有其他 jar(antlr-2.7.2.jar 除外)都丢失了。

没有更多的 auxClassPath 条目。通过在不同的行中指定每个类路径条目来解决此问题。

如果有人有更好的想法,欢迎贡献。

关于java - FindBugs 扫描外部 jar,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15898893/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com