3

アグリゲーターpomと一連のサブモジュールを備えたジェンキンスのmavenジョブがあります。ジェンキンスがチェックスタイルの警告を表示すると、次のようになります。

  • サブモジュール 1: 10 個の警告
  • サブモジュール 2: 10 個の警告
  • アグリゲーター モジュール: 20 件の警告

  • 合計: 40 件の警告

言い換えれば、アグリゲーターは (当然のことですが?) サブモジュールで見つかった警告を集約します。これがなければ、合計が本来あるべき値の 2 倍になるため、それほど大きな問題にはなりません。

問題が何であるかを知っている人はいますか?ありがとう!

4

2 に答える 2

2

これは、Freestyleプロジェクトタイプを使用しているか、EvilMavenプロジェクトタイプを使用しているかによって異なります

フリースタイルを使用している場合は、checkstyle.xml結果のパターンを設定して、アグリゲーターを除外するか、サブプロジェクトを除外する必要があります。

邪悪な兄弟を使用している場合は、「モジュールごと」の構成を微調整して、子モジュールのレポートを無効にする必要がある場合があります。

ここでの問題は、アグリゲーターモジュールが、集約されたレポートを生成するために子プロジェクトから警告をコピーしていることです。

Jenkinsでジョブを実行するときに、集計を無効にすることもできます。

これは基本的に、邪悪なプロジェクトタイプからの自動スニッフィング「魔法」と、maven-checkstyle-pluginが集計レポートを実装する方法との間の戦いです。

于 2012-11-17T20:52:17.517 に答える
0

ここからいくつかのトリックを適応させることができます

以下をアグリゲーター pom に追加します。

<project>
  ...
  <profiles>
    ...
    <profile>
      <id>on-jenkins</id>
      <build>
        <plugins>
          <plugin>
            <artifactId>maven-checkstyle-plugin</artifactId>
            <inherited>false</inherited>
            <configuration>
              <skip>true</skip>
            </configuration>
          </plugin>
        </plugins>
      </build>
    </profile>
    ...
  </profiles>
  ...
</project>

-P+on-jenkinsそして、Jenkins ジョブで Maven の目標を追加します。

于 2012-11-18T11:16:38.983 に答える