问题标签 [findbugs]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
13931 浏览

java - 如何从 Eclipse findbugs 插件中导出 findbugs 结果?

我有适用于 Eclipse 的 findbugs 插件,当在我的项目上运行时,它会在 Bugs explorer 中显示按错误类型分类的结果。

我需要能够做两件事:

  • 将所有这些导出到 Excel 工作表
  • 找出一组文件中报告的错误(并且能够在不运行整个项目的情况下递归地执行它,并导出并找出要修改的类。

有什么建议么?

仅供参考,我正在使用 MyEclipse v 6.0.1 和 FindBugs 1.3.4

0 投票
8 回答
66009 浏览

java - 连接关闭时结果集未关闭?

我一直在对我们的一个宠物项目进行代码审查(主要使用 FindBugs 之类的工具),并且 FindBugs 将以下代码标记为错误(伪代码):

错误是此代码可能不会释放资源。我发现 ResultSet 和 Statement 没有关闭,所以我最终将它们关闭:

但是我在很多项目(来自不少公司)中都遇到了上述模式,并且没有人关闭 ResultSets 或 Statements。

当连接关闭时,您是否遇到过结果集和语句未关闭的问题?

我只发现了这个,它指的是 Oracle 在关闭连接时遇到关闭 ResultSets 的问题(我们使用 Oracle db,因此我进行了更正)。java.sql.api 在 Connection.close() javadoc 中什么也没说。

0 投票
17 回答
68054 浏览

java - Checkstyle 与 PMD

我们正在为我们的 Java 产品的构建系统中引入静态分析工具。我们使用的是 Maven2,所以CheckstylePMD集成是免费的。然而,在执行基本样式规则方面,这两个工具之间的功能似乎有很大的重叠。

使用这两者有什么好处吗?如果一个可以工作,我不想维护 2 个工具。如果我们选择一种,我们应该使用哪一种,为什么?

我们还计划使用 FindBugs。我们应该看看其他静态分析工具吗?

更新:共识似乎是 PMD 优于 CheckStyle。我看不出同时使用两者的充分理由,而且我不想维护两组规则文件,因此我们可能会专门针对 PMD。我们还将引入 FindBugs,也许最终还会引入 Macker 来执行架构规则。

0 投票
11 回答
842 浏览

c - 有什么工具可以捕捉 C 代码中的愚蠢错误?

我有一个讨厌的错字,浪费了我和我同事的时间,它是这样的:

首先,这很尴尬,第二件事,我不应该重复这件事。我对 C 比较陌生。在 Java 中,我想我可以使用FindBugs来捕获此类错误,我应该使用什么工具来处理 C 代码?皮棉?

0 投票
3 回答
9993 浏览

java - 当使用带有 FindBugs 的 Eclipse 时,您能否将错误标记为非错误并将其从错误列表中删除?

FindBugs 在我的代码中发现了一个潜在的错误。但这不是错误。

是否可以将此事件标记为“不是错误”并将其从错误列表中删除?

我已经非常清楚地记录了为什么每种情况都不是错误。

例如。一个类实现了类似的接口。它有 compareTo 方法。但是,我没有覆盖 equals 方法。

FindBugs 不喜欢这样,因为 JavaDocs 声明建议

尽管在我的情况下,上述条件是并且永远都是正确的。

0 投票
3 回答
977 浏览

eclipse - Eclipse 的 FindBugs 插件是否可以报告为错误而不是警告?

我正在处理一个非常大的遗留代码库。我们希望将 FindBugs 引入开发实践中。

每当代码由 Eclipse 构建时,我打算让 FindBugs 运行。

我希望能够使 findbugs 警告在代码中显示为错误,这样您就可以在 eclipse 中更改严重性级别

eclipse 是否可以将它产生的警告报告为错误?

谢谢

0 投票
2 回答
2796 浏览

ant - Looking for example xml to generate a Findbugs report using ANT to analyse multiple jars?

How do I setup an Ant task to generate a Findbugs report when the source folder has many jars in it?

I'm looking for a worked example of the ant task required to output the fancy HTML from a folder containing multiple jars

0 投票
4 回答
12986 浏览

java - Findbugs 警告:Equals 方法不应假设任何关于其参数类型的内容

在我的项目上运行 FindBugs 时,我遇到了一些上述错误的实例。

也就是说,我的 equals 覆盖版本将 RHS 对象转换为与定义覆盖版本的对象相同的类型。

但是,我不确定是否有可能有更好的设计,因为 AFAIK Java 不允许方法参数发生变化,因此无法为 equals 参数定义任何其他类型。

是我做错了什么,还是 FindBugs 太急切了?

表达这个问题的另一种方式是:如果传递给 equals 的对象与 LHS 的类型不同,那么正确的行为是什么:这是错误的,还是应该有例外?

例如:

0 投票
3 回答
7706 浏览

.net - .NET 的 FindBugs

在 Java 中是一个名为FindBugs的好工具。.Net中有类似的东西吗?

0 投票
3 回答
3130 浏览

java - Findbugs 没有发现潜在的 SQL 注入漏洞

我刚刚为 Eclipse 安装了 FindBugs 插件,希望它能帮助我找到代码中的 SQL 注入漏洞。然而,它似乎并没有找到任何东西,即使我故意放了一些。

在以下示例中,假设staticFinalBaseQuery声明如下:

public static final String staticFinalBaseQuery = "SELECT foo FROM table where id = '";

并且假设userInputfilterString是包装示例片段的方法的参数。它直接来自用户输入,没有经过净化。

例如,以下代码段不会触发警告:

wherestaticFinalBaseQuery是一个静态的最终字符串,userInputfilterString是直接来自用户输入的字符串,仅在运行时可用,根本不被清除。显然,这是一个漏洞。

我希望触发“ Aprepared statement is generated from a nonconstant String ”警告。

以下代码段也不会引起警告(不足为奇,因为它们的编译形式可能相同):

但是,这将导致警告:

如果我附加一个空字符串或一个空格,则不会触发任何警告。

所以,我的问题是,如何让 FindBugs 在我的第一个示例中触发?我也很好奇为什么第一个不会引起警告,但最后一个呢?

提前致谢!

编辑:我向 FindBugs 的错误跟踪系统提交了一个错误,因为这似乎是一个错误。但是,如果有人有任何提示,我很想听听。