gpt4 book ai didi

java - Checkstyle 能否验证字符串值等于类或文件名?

转载 作者:行者123 更新时间:2023-11-30 00:16:32 25 4
gpt4 key购买 nike

我有一个 Android 项目,其中大多数类都定义了一个包含类名的字符串常量,用作 Log 的标记参数。类方法。例如:

public final class MyFileReader
{
private static final String LOG_TAG = "MyFileReader";

// rest of class
}

是否可以写一个CheckStyle规则来检查以这种方式定义的任何值是否与类的名称(或文件名的根)相匹配?请牢记:

  • 并非每个类都会定义一个 LOG-TAG 值,但它们定义的位置必须与类名相匹配。
  • 不幸的是,该值确实需要是一个字符串常量。它不是使用 MyFileReader.class.getSimpleName() 的选项,因为在发布版本中,类名由 ProGuard 优化。 .

最佳答案

有趣的用例!我认为您可以使用 Checkstyle Addons 不用自己写支票就可以逃脱。 (我是维护者)。它提供了一个 LocationReference检查您是否可以使用。

enabling Checkstyle Addons 之后,像这样配置检查:

<module name="LocationReference">
<property name="variableNames" value="LOG_TAG" />
<property name="location" value="simpleclass"/>
</module>

关于java - Checkstyle 能否验证字符串值等于类或文件名?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47160031/

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