【问题标题】:Linter for unused parameters in a Java project?Java 项目中未使用参数的 Linter?
【发布时间】:2023-02-07 18:15:56
【问题描述】:

CheckStyle 在早期版本中有这个选项: http://api.dpml.net/checkstyle/3.5/com/puppycrawl/tools/checkstyle/checks/usage/UnusedParameterCheck.html

寻找类似的检查器。谁能推荐我一些东西?

测试此用例:


... main method .. 

        test("hello");
        return Longs.tryParse(request.getCategoryId());
    }

    @Nullable
    Long test(String unused) {
        System.out.println("Hello World");
        return null;
    }

我希望构建失败

当前使用的 CheckStyle 版本是 3.7。不打算降级。

【问题讨论】:

标签: java styling linter


【解决方案1】:

声纳林支持这个作为规则“java:S1172”:

Unused method parameters should be removed - 未使用的参数是 误导。无论传递给这些参数的值是什么, 行为将是相同的。

但这条规则也有一些例外。

该规则不会引发未使用参数的问题:

  • 用@javax.enterprise.event.Observes 注释
  • 在覆盖和实现方法中
  • 在接口默认方法中
  • 在仅抛出或具有空主体的非私有方法中
  • 在注解方法中,除非注解是@SuppressWarning("unchecked") 或@SuppressWarning("rawtypes"),其中 情况下注释将被忽略
  • 在可覆盖的方法中(非最终的,或不是最终类的成员,非静态的,非私有的),如果参数被记录为 适当的javadoc。

日蚀集成开发环境支持开箱即用。这可以在 Java>Compiler>Errors/Warnings 中使用选项“Value of method parameter is not used”启用 这会产生信息/警告/错误(根据您的配置)“未使用参数 XXX 的值”

【讨论】:

    猜你喜欢
    • 2019-01-16
    • 2013-04-04
    • 1970-01-01
    • 2017-07-22
    • 2020-04-18
    • 2016-05-30
    • 1970-01-01
    • 2018-10-07
    • 1970-01-01
    相关资源
    最近更新 更多