Maven-PMD-Pluginは、バンドルされたルールセットのみを使用します
-
28-10-2019 - |
質問
私は私のプロジェクトで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を実行したときです。チェック、基本、未使用のコード、インポートからのみ8つの違反が与えられます。カスタムルールセットファイルにリストしたすべてのルールを使用するわけではありません。カスタムルールセットファイルを使用せずにロールセットでLogging-java.xmlとstrings.xmlを直接使用してみましたが、それでも機能しません。
MVN PMD:PMDを実行すると、ビルドの成功が得られますが、ターゲットフォルダーにエラーが表示されます。なぜここでビルドの成功を収めるのですか?
解決
これは、ビルドセクションとレポートセクションのプラグインを追加するだけで解決しました。
どういうわけか、すべてのルールセットを実行できるようにするためにも必要でした。以前は、ビルドと展開フェーズ中にそれらを実行したい場合にのみ、プラグインをビルドに入れたという印象を受けていました。
所属していません StackOverflow