【问题标题】:maven-pmd-plugin uses only the bundled rulesetsmaven-pmd-plugin 仅使用捆绑的规则集
【发布时间】:2011-12-05 17:51:35
【问题描述】:

我在我的项目中使用 maven-pmd-plugin,这就是我的配置方式

<reporting>
 <plugins>
  <plugin>
    <groupId>org.apache.maven.plugins</groupId>
    <artifactId>maven-jxr-plugin</artifactId>
    <version>2.3</version>
  </plugin>
  <plugin>
    <groupId>org.apache.maven.plugins</groupId>
    <artifactId>maven-pmd-plugin</artifactId>
    <version>2.6</version>
    <configuration>
     <linkXref>true</linkXref>
     <sourceEncoding>UTF-8</sourceEncoding>
     <minimumTokens>100</minimumTokens>
     <targetJdk>${targetJdk}</targetJdk>
       <rulesets>
           <ruleset>${maven.pmd.rulesetfiles}</ruleset>
       </rulesets>
    </configuration>
  </plugin>
 </plugins>
</reporting>

这是上面配置中用到的属性

<properties>
<spring.version>3.0.6.RELEASE</spring.version>
<basedir>C:\Users\Q4\workspace\project</basedir>
<maven.pmd.rulesetfiles>${basedir}\pmdRuleset.xml</maven.pmd.rulesetfiles>
<targetJdk>1.5</targetJdk>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
</properties>

问题是当我运行 mvn pmd:check 时,它给了我 8 次违规——仅来自基本代码、未使用代码和导入。它根本不使用我在自定义规则集文件中列出的所有规则。我什至尝试在规则集中直接使用 logging-java.xml 和 strings.xml 而不使用自定义规则集文件,但它仍然不起作用。

当我运行 mvn pmd:pmd 时,我得到了 BUILD SUCCESS 但错误仍然显示在我的目标文件夹中。为什么我会在这里构建成功?

【问题讨论】:

    标签: maven-plugin pmd


    【解决方案1】:

    我通过简单地将插件添加到构建部分以及报告部分中的插件来解决这个问题。

    不知何故,它也需要能够运行所有规则集。之前我的印象是,只有当我们想在构建和部署阶段运行插件时,我们才会将插件放入构建中。

    【讨论】:

    • 如果你运行mvn site,规则集被认为是正确的
    猜你喜欢
    • 2013-02-14
    • 1970-01-01
    • 1970-01-01
    • 2018-02-06
    • 2012-02-27
    • 2011-06-21
    • 2017-10-23
    • 2011-08-09
    • 1970-01-01
    相关资源
    最近更新 更多