2017-02-21 18 views
0

私はjenkinsジョブを作成しました。以下はpomファイルです。 1.特定の「X」件のPMD違反を無視する方法を提案できますか? 2. PMDレポートを生成するには、この設定は正しいですか?ジェンキンスでの目標は、PMDをクリーンインストールです:チェックサイトJenkinsでPMD違反のしきい値を設定する方法

<build> 
    <plugins> 
     <plugin> 
      <groupId>org.apache.maven.plugins</groupId> 
      <artifactId>maven-pmd-plugin</artifactId> 
      <version>2.7.1</version> 
      <configuration> 
       <linkXRef>false</linkXRef> 
       <!--<targetJdk>1.6</targetJdk>--> 

       <failOnViolation>true</failOnViolation> 


      </configuration> 
      <executions> 
       <execution> 

        <goals> 
         <goal>check</goal> 
        </goals> 
       </execution> 
      </executions> 
     </plugin> 
    </plugins> 
</build> 
<reporting> 
    <plugins> 
     <plugin> 
      <groupId>org.apache.maven.plugins</groupId> 
      <artifactId>maven-pmd-plugin</artifactId> 
      <version>2.7.1</version> 
      <configuration> 
       <linkXRef>false</linkXRef> 
       <!--<targetJdk>1.6</targetJdk>--> 
       <failurePriority>5</failurePriority> 
       <failOnViolation>true</failOnViolation> 
       <targetDirectory>./pmdOutput</targetDirectory> 
       <rulesets> 
        <ruleset>/rulesets/basic.xml</ruleset> 
       </rulesets> 
      </configuration> 
     </plugin> 
     <plugin> 
      <groupId>org.apache.maven.plugins</groupId> 
      <artifactId>maven-jxr-plugin</artifactId> 
     </plugin> 
     <plugin> 
      <groupId>org.apache.maven.plugins</groupId> 
      <artifactId>maven-javadoc-plugin</artifactId> 
     </plugin> 
    </plugins> 
</reporting> 

答えて

0

PMD Mavenプラグインは、違反の数の設定のしきい値に許可していない、それは与えられた優先順位の最初の違反で失敗したか、それはしていません。

pmd:checkターゲットを実行していませんが、レポートを生成し、Jenkins' PMD pluginを使用してレポートxmlを解析し、必要に応じてビルドに失敗します。

JenkinsのPMDプラグインでは、より柔軟なしきい値設定が可能です。

+0

私はJenkinsのPMD Plugin only goalをクリーンインストールpmd:checkサイトとして使用しています。 Jenkinは、生成されたレポートをどこに保存しますか?共通の場所で救うことができないのですか? ビルドパスを作成するにはどのようにPMD違反のインスピレーション? – JMD

+0

こんにちは@Johnco failOnViolationはどちらも動作しません。「」のみが使用された場合、コードは ''プロパティの値に関係なくビルドされます。 ''のみを使用すると、 'failOnViolation'プロパティに関係なくビルドが失敗します。 – JMD

+0

''の値を使用する唯一の目標は 'pmd:check'です(デフォルトはtrue)。 'pmd:pmd'を使ってレポートを生成し、ビルドに失敗したかどうかを確認します。タスクは 'verify'ライフサイクルステップにバインドされているので、' build'設定を使用するので、 ''の ''を守る必要があります。 – Johnco

関連する問題