[英]SonarQube issue: Rename this constant name to match the regular expression '^[A-Z][A-Z0-9](_[A-Z0-9]+)$'
[英]Resolve Java Checkstyle Error: Name 'logger' must match pattern '^[A-Z][A-Z0-9]*(_[A-Z0-9]+)*$'
使用 Eclipse Checkstyle 插件我看到這個錯誤:
名稱 'logger' 必須匹配模式
'^[AZ][A-Z0-9]*(_[A-Z0-9]+)*$'
。
我通過更改解決了這個錯誤:
private static final Logger logger = Logger.getLogger(someClass.class);
到
private static final Logger LOGGER = Logger.getLogger(someClass.class);
為什么這是一個 checkstyle 警告?
因為該字段被標記為final
和static
這意味着它是一個常量,應該用大寫字母命名。
從這個鏈接,您可以看到模塊ConstantName
的格式為^[AZ][A-Z0-9]*(_[A-Z0-9]+)*$
,這正是您的 Checkstyle 插件指定的格式。
如果您希望將logger
保留為有效選項,則文檔建議使用此配置:
<module name="ConstantName">
<property name="format"
value="^log(ger)?$|^[A-Z][A-Z0-9]*(_[A-Z0-9]+)*$"/>
</module>
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.