【问题标题】:Suppress PMD VariableNamingConventions rule for lowercase 'log' field抑制小写“日志”字段的 PMD VariableNamingConventions 规则
【发布时间】:2015-11-20 20:31:26
【问题描述】:

我正在使用 PMD 检查 Java 源文件。对于log 变量,PMD 显示该变量应为大写,因为它是staticfinal

我想从该规则中排除 log 变量。这可能吗?

private final static Logger log = LoggerFactory.getLogger(ApplianceImporter.class);

【问题讨论】:

    标签: java logging pmd


    【解决方案1】:

    可以配置 PMD 规则以忽略某些 XPath:

      <rule ref="rulesets/java/naming.xml/VariableNamingConventions">
        <properties>
          <property name="violationSuppressXPath" value="//VariableDeclaratorId[@Image='log']"/>
        </properties>
      </rule>
    

    这从VariableNamingConventions 规则中完全排除了所有名为log 的字段,并且不需要//NOPMD 的代码污染。

    【讨论】:

      【解决方案2】:

      你必须添加 //NOPMD 和行尾

      private final static Logger log = LoggerFactory.getLogger(ApplianceImporter.class); //NOPMD
      

      这里有深入的解释

      http://pmd.sourceforge.net/pmd-4.3.0/suppressing.html

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2016-08-29
        • 1970-01-01
        • 2017-11-13
        相关资源
        最近更新 更多