2

私は findbugs-maven-plugin を使って maven のバグをチェックしています。私のmavenプロジェクトは、おおよそ次のようなマルチモジュールプロジェクトです:

java-module
    pom.xml
    src/ ...
pom.xml
scala-module
    pom.xml
    src/ ...

プロジェクトのビルドとテストには Jenkins を使用します。Jenkinsfindbugs:findbugsは最上位ディレクトリでゴールを実行します。FindBugs は、Scala コンパイラによって生成されたコードに対して多くの偽の警告を報告するため、FindBugs に のコードを分析しないように伝えたいと思いますscala-module。ただし、findbugs:findbugs最上位のディレクトリで実行すると、常に と のすべてのクラスが分析されjava-moduleますscala-modulescala-module全体として無視するようにMavenに指示するにはどうすればよいですか? FindBugs 除外フィルターについては知っていますが、特定のサブモジュールのコードを分析しないように指示する FindBugs の構成オプションが必要です。

FindBugs は、次のようpom.xmlにサブディレクトリに構成さjava-moduleれます。

<reporting>
  <plugins>
    <plugin>
      <groupId>org.codehaus.mojo</groupId>
      <artifactId>findbugs-maven-plugin</artifactId>
      <version>${version.plugin.codehaus.findbugs}</version>
      <configuration>
        <findbugsXmlOutput>true</findbugsXmlOutput>
        <findbugsXmlWithMessages>true</findbugsXmlWithMessages>
        <xmlOutput>true</xmlOutput>
      </configuration>
    </plugin>
  </plugins>
</reporting>

に対してのみ設定が行われているにもかかわらずjava-module、FindBugs は常に も分析しscala-moduleます。

4

2 に答える 2

2

pom.xmlモジュールをスキップするように findbugs に明示的に指示する scala-module の構成を追加します。

<reporting>
  <plugins>
    <plugin>
      <groupId>org.codehaus.mojo</groupId>
      <artifactId>findbugs-maven-plugin</artifactId>
      <configuration>
        <skip>true</skip>
      </configuration>
    </plugin>
  </plugins>
</reporting>

Maven では、このような場合にボイラープレート XML を繰り返す必要があることに注意してください。

于 2013-06-18T13:44:54.750 に答える