gpt4 book ai didi

java - SuppressWarnings 不适用于 FindBugs

转载 作者:搜寻专家 更新时间:2023-11-01 02:51:09 25 4
gpt4 key购买 nike

我在我的 Eclipse 项目上运行了 FindBugs 并收到了一个潜在的错误警告,我想出于特定原因(在这个问题的上下文之外)抑制该警告。这是代码:

public class LogItem {
private String name;

private void setName(final String nm) {
name = nm;
}
}

当你在这个类上运行 FindBugs 时,它会给你一个关于 name = nm 赋值操作的警告,指出:Unread field: com.me.myorg.LogItem.name.

所以我尝试添加这个:

    private void setName(final String nm) {
@edu.umd.cs.findbugs.annotations.SuppressWarnings(value = "NP", justification = "Because I can")
name = nm;
}

当我这样做时,我在 Eclipse 中收到语法(编译)错误,指出:

Duplicate local variable nm; name cannot be resolved to a type.

然后我尝试在字段本身上添加 FindBugs 的 SuppressWarnings,但是在类上重新运行 FindBugs 之后,FindBugs 仍然提示同一行代码并且出于相同的原因。我什至尝试将 SuppressWarnings 添加到 setName 方法中,但仍然没有区别。

我如何(确切地!)使用此注释来消除 FindBugs?!?

最佳答案

将注解放在字段上并修复错误标识符。这对我有用:

public class LogItem {
@edu.umd.cs.findbugs.annotations.SuppressWarnings("URF_UNREAD_FIELD")
private String name;

关于java - SuppressWarnings 不适用于 FindBugs,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10884606/

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