Findbugs Java忽略字段或行

Findbugs Java忽略字段或行,java,annotations,findbugs,Java,Annotations,Findbugs,是否可以对特定字段或行进行Findbugs停用注释,而不是停用所有包含方法的字段的整个检查 @edu.umd.cs.findbugs.annotations.SuppressFBWarnings(value="BEAN_SUPER_CALL_ON_OBJECT", justification = "I don't want to overwrite the method, but otherwise our equals check issues a warning") @Override pu

是否可以对特定字段或行进行Findbugs停用注释,而不是停用所有包含方法的字段的整个检查

@edu.umd.cs.findbugs.annotations.SuppressFBWarnings(value="BEAN_SUPER_CALL_ON_OBJECT",
justification = "I don't want to overwrite the method, but otherwise our equals check issues a warning")
@Override
public boolean equals(final Object obj) {

    // this should not be ignored
    super.test(obj);

    // this should be ignored
    return super.equals(obj);

}
这行不通:

@edu.umd.cs.findbugs.annotations.SuppressFBWarnings(value="BEAN_SUPER_CALL_ON_OBJECT")
return super.equals(obj);
@edu.umd.cs.findbugs.annotations.SuppressFBWarnings(value="BEAN_SUPER_CALL_ON_OBJECT")
super.equals(obj);
此外,这也行不通:

@edu.umd.cs.findbugs.annotations.SuppressFBWarnings(value="BEAN_SUPER_CALL_ON_OBJECT")
return super.equals(obj);
@edu.umd.cs.findbugs.annotations.SuppressFBWarnings(value="BEAN_SUPER_CALL_ON_OBJECT")
super.equals(obj);
这是可行的,但仍然会弹出警告:

@edu.umd.cs.findbugs.annotations.SuppressFBWarnings(value="BEAN_SUPER_CALL_ON_OBJECT")
boolean ret_val = super.equals(obj);
return ret_val;

它可以用于字段,但不能用于单行代码。根据,可以将
@SuppressFBWarnings
注释应用于

[Target]类型、字段、方法、参数、构造函数、包

(在
edu.umd.cs.findbugs.annotations
包中,
@SuppressFBWarnings
@SuppressWarnings
是等效的。)


如您所见,
LOCAL\u VARIABLE
ANNOTATION\u TYPE
不在列表中。虽然注释上没有
@Target
元素,但FindBugs在这两种情况下会忽略它。

嗯,为什么要这样重写该方法?这只是一个简化的示例,大多数常见屏幕无法在屏幕xD上获取该方法的代码。这一个没有意义,但问题是相同的。