将Eclipse与FindBugs一起使用时,您是否可以将错误标记为错误并将其从错误列表中删除?

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

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

我已经非常清楚地记录了为什么每个案例都不是一个bug。

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

FindBugs并不喜欢这样,因为JavaDocs声明建议使用它

(x.compareTo(y)==0) == (x.equals(y)) 

虽然在我的情况下,上述条件是并且始终是真实的。

您也可以使用SuppressWarnings注释,而不是使用filter。 您必须使用findbugs包中的注释,这意味着您需要导入或使用它的完全限定名称。 这是因为除了来自JDK的SuppressWarning之外 ,它还保留了“Class”,这是必需的,因为findbugs对编译的字节码而不是源代码进行操作。

例:

 @edu.umd.cs.findbugs.annotations.SuppressWarnings( value="EQ_COMPARETO_USE_OBJECT_EQUALS", justification="because I know better") 

有一个角落你可能不应该使用注释:如果你的代码是最终在jar中的库代码,那么它可以被其他项目使用你仍然使用Java5。 原因是JDK中的一个错误 ,如果注释不在类路径中,它会崩溃javac。

可能通过添加filter作为findbugs的参数

匹配子句只能匹配错误实例中实际包含的信息

      

另一方面 – 如果你使用这种自动代码审查工具根据众所周知的建议强调潜在的问题,也许你应该遵守它的建议? 想想那些会在你之后维护代码的人。

如果代码随时间变化怎么办?