问题标签 [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 投票
3 回答
33486 浏览

java - 测试浮点相等性。(FE_FLOATING_POINT_EQUALITY)

我在 ANT 脚本中使用了 findbugs,但我不知道如何修复我的两个错误。我已阅读文档,但不明白。以下是我的错误和附带的代码:

错误 1:测试浮点相等性。(FE_FLOATING_POINT_EQUALITY)

错误 2:EQ_COMPARETO_USE_OBJECT_EQUALS

我已经阅读了 ComparesTo 问题的文档,其中指出

强烈建议但不严格要求 (x.compareTo(y)==0) == (x.equals(y))。一般来说,任何实现了 Comparable 接口并违反此条件的类都应该清楚地表明这一事实。推荐的语言是“注意:这个类有一个与equals不一致的自然顺序。”

以及关于浮点相等的文档

此操作比较两个浮点值是否相等。因为浮点计算可能涉及舍入,所以计算出的浮点和双精度值可能不准确。对于必须精确的值,例如货币值,请考虑使用固定精度类型,例如 BigDecimal。对于不需要精确的值,请考虑比较某个范围内的相等性,例如:if ( Math.abs(x - y) < .0000001 )。请参阅 Java 语言规范,第 4.2.4 节。

我不明白。有人可以帮忙吗?

0 投票
1 回答
5576 浏览

ant - Findbug - ANT xslt 样式表源代码参考

我有一个 ANT 目标,它在同一源代码上运行 findbugs 两次以生成 xml 和 html 报告

这是愚蠢的,因为可以使用 xml 报告生成 html 报告

但生成的 html 报告没有正确的源代码引用。关于如何使其正常工作并避免重复的 findbugs 调用的任何想法?

回答后更新

0 投票
3 回答
4901 浏览

java - 抑制 Eclipse 中的 FindBugs 警告

我使用字符串作为锁,所以想确保对象是一个新实例。FindBugs 抱怨是因为直接定义字符串(使用双引号)通常更有效。我的代码如下所示:

我在这里做错了吗?Eclipse FindBugs 插件仍然报告这是一个问题:

0 投票
1 回答
581 浏览

android - 是否可以在 Android 上使用像 FindBugs 这样的静态分析工具?

我对 Android 开发相对较新,快速的谷歌搜索没有任何兴趣。

0 投票
2 回答
10823 浏览

c# - .NET/C# 的 FindBugs 之类的东西

可能重复:
.Net 的 FindBugs

我需要用于 C#/.NET 的FindBugs 之类的东西......

你能告诉我在哪里可以找到这样的东西吗?

谢谢。

0 投票
3 回答
2005 浏览

java - 如何检测新值已添加到枚举中并且未在开关中处理

有时我必须在我的项目中为枚举类型添加一个新值。

我想要的是为我拥有的每个未处理新值的开关产生编译时错误,如下所示:

有一个默认值:抛出一些异常还不够好,我希望它是编译时间。

我不认为这是可能的,但也许有人有一个巧妙的技巧......

我以为 Findbugs 会有一个规则来找到那些,但我只看到了这个: Eq: Covariant equals() method defined for enum (EQ_DONT_DEFINE_EQUALS_FOR_ENUM)

编辑:我选择马克的回复,我确实使用 Eclipse,这听起来就像我需要的一样!我根本不是 findbugs 方面的专家,所以我可能错过了这样的功能,尽管我不这么认为。

0 投票
5 回答
11664 浏览

maven-2 - Findbugs Maven 插件 - findbugs-exclude 与多个项目

我有一个多项目设置,使用 Maven 和 Findbugs 插件。我需要在其中一个子项目中排除一些文件,所以我将其添加到findbugs-exclude.xml. 这在我构建子项目时有效。

当我尝试在顶层构建时,我的问题就出现了。findbugs-exclude.xmlMaven在子项目中找不到。所以它不会忽略我的错误并因此而失败。我可以将我findbugs-exclude.xml的放在顶级目录中,并且排除工作。但那是污染顶层,不会被看好。

有没有办法让 Maven 插件使用findbugs-exclude.xml子目录中的文件?最好在顶层几乎没有变化?

0 投票
1 回答
4002 浏览

java - 如何在 Findbugs 中使用 @CheckForNull 等?

当我通过 Findbugs 运行它时,我收到一个警告:

警告的详细信息如下:

Bug:arg必须为非空但被标记为可为空
模式 id: NP_PARAMETER_MUST_BE_NONNULL_BUT_MARKED_AS_NULLABLE, type: NP, category:STYLE

此参数始终以要求它为非空的方式使用,但该参数被显式注释为 be Nullable。参数的使用或注释的使用是错误的。

有人可以解释一下 Findbugs 在这里抱怨什么吗?

请注意,我使用的是edu.umd.cs.findbugs.annotations.*成员,而不是javax.annotations.*. (有区别吗?)

为 Eclipse 3.6.1 设置的是 FindBugs 插件 1.3.9.2009-。


Matthew Flaschen 建议我@NonNull改用,但现在我遇到了这个问题:

警告的详细信息是:

错误:由于调用方法的返回值可能导致空指针取消引用
Pattern id: NP_NULL_ON_SOME_PATH_FROM_RETURN_VALUE, type: NP, category:STYLE

方法的返回值在没有检查的情况下被取消引用null,并且该方法的返回值通常应该被检查null。这可能会导致NullPointerException代码被执行。

我基本上想blah满足@CheckForNull要求,但是如果我将其设为 arg be ,我将无法做到@NonNull。我怎样才能让它工作?

0 投票
2 回答
1414 浏览

java - 排除 findBugs 发现的错误

当我使用 findBugs 时,我会得到错误列表。我修复了一些错误,其中一些不是我希望修复的错误。

下次我在代码上运行 findBugs 时,如何配置它以忽略这些错误?

0 投票
3 回答
387 浏览

java - PMD - 有没有办法跟踪单个开发人员的 PMD 投诉

是否有工具或插件可以跟踪每个开发人员的 PMD、CheckStyle 和 Findbugs 不合规报告

谢谢KR