【问题标题】:Can I suppress IntelliJ "Unused declaration" inspection for fields?我可以禁止对字段进行 IntelliJ“未使用的声明”检查吗?
【发布时间】:2021-07-08 10:17:01
【问题描述】:

我想禁止 IntelliJ(2021.1,也在 2020.2 上测试)中对匹配特定模式的所有 字段 进行“未使用声明”检查。 我能够抑制使用“代码模式”的方法的警告,但字段似乎没有受到影响。

由于项目规模,我确实需要使用 模式 来避免为每个相关字段添加注释。

这是我的测试课:

public class TestInspection {

    public static final String SUPPRESSED_NAME = "test";
    public static final String CONSTANT_NAME = "importantConstant";
    
    public void testSuppressedMethod() {
    }
    
    public void testMethod() {
    }
}

这些是我的设置:

以下是警告: 我想删除第一个警告(字段“SUPPRESSED_NAME”)

有人有什么想法吗?

【问题讨论】:

  • 随时在 YouTrack 上创建功能请求:youtrack.jetbrains.com/issues/IDEA
  • @y.bedrov 不需要,@SuppressWarnings("unused") 可用于 IDEA
  • 我应该澄清一下,用模式来做这件事很重要,因为项目相当大,添加注释并不可行,我将它添加到问题描述中

标签: java intellij-idea intellij-inspections


【解决方案1】:

是的,您可以使用 @SupressWarnings("unused") 注释该字段

@SuppressWarnings("unused")
public static final String SUPPRESSED_NAME = "test";

What is the list of valid @SuppressWarnings warning names in Java? 中所述,您需要根据您的环境检查您可以使用哪些类型的抑制。

【讨论】:

  • 感谢@Dropout,这似乎是目前唯一可行的方法(尽管它不适用于大型项目)
  • @PavolGanzarcik 你有什么大规模的问题?你也可以用它来注释类,虽然我建议只在特定情况下使用它。换句话说,是的,这“只是一个警告”,但理想情况下,您不希望代码中包含未使用的内容。
  • 项目从数据库中为字段生成描述符,然后使用反射为它们构建一个UI,描述符字段因此未被使用,但不能被删除。注释整个类并丢失其他字段和方法的警告将是一种耻辱。
【解决方案2】:

目前看来不可能。如果您愿意,您可以投票支持此功能请求:

https://youtrack.jetbrains.com/issue/IDEA-232239

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2013-03-19
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-09-09
    • 1970-01-01
    • 2019-02-26
    • 1970-01-01
    相关资源
    最近更新 更多