gpt4 book ai didi

java - Findbugs Java 忽略字段或行

转载 作者:行者123 更新时间:2023-12-02 05:31:55 32 4
gpt4 key购买 nike

是否可以为特定字段或行制作 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")
boolean ret_val = super.equals(obj);
return ret_val;

最佳答案

对于字段可以,但对于单行代码则不行。根据FindBugs 3.0 documentation@SuppressFBWarnings 注解可以应用于

[Target] Type, Field, Method, Parameter, Constructor, Package

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

如您所见,LOCAL_VARIABLEANNOTATION_TYPE 不在列表中。尽管注释上没有 @Target 元素,但 FindBugs 在这两种情况下会忽略它。

关于java - Findbugs Java 忽略字段或行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25446442/

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