回答:
子POMでFindbugsを無効にすると、次のことが機能します。
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>findbugs-maven-plugin</artifactId>
<executions>
<execution>
<id>ID_AS_IN_PARENT</id> <!-- id is necessary sometimes -->
<phase>none</phase>
</execution>
</executions>
</plugin>
注:Findbugsプラグインの完全な定義は親/スーパーPOMにあるため、バージョンなどを継承します。
Maven 3では、以下を使用する必要があります。
<configuration>
<skip>true</skip>
</configuration>
プラグイン用。
<id>…</id>
親POMの一部を追加する必要があり、それでうまくいきました。
<skip>
パラメータがあるわけではありません。
プラグインに「スキップ」構成パラメーターがあるかどうかを確認します。ほぼすべてがそうです。含まれている場合は、子の宣言に追加するだけです。
<plugin>
<groupId>group</groupId>
<artifactId>artifact</artifactId>
<configuration>
<skip>true</skip>
</configuration>
</plugin>
そうでない場合は、次を使用します。
<plugin>
<groupId>group</groupId>
<artifactId>artifact</artifactId>
<executions>
<execution>
<id>TheNameOfTheRelevantExecution</id>
<phase>none</phase>
</execution>
</executions>
</plugin>
スレッドは古いですが、おそらく誰かがまだ興味を持っています。私が見つけた最も短い形式は、λlexとbmarguliesの例をさらに改善したものです。実行タグは次のようになります。
<execution>
<id>TheNameOfTheRelevantExecution</id>
<phase/>
</execution>
私が強調したい2点:
投稿後、それはすでにstackoverflowにあることがわかりました: Mavenマルチモジュールプロジェクトで、1つの子でプラグインを無効にするにはどうすればよいですか?
私はこのスレッドが本当に古いことを知っていますが、@ Ivan Bondarenkoのソリューションが私の状況で私を助けてくれました。
に次のものがありましたpom.xml
。
<build>
...
<plugins>
<plugin>
<groupId>com.consol.citrus</groupId>
<artifactId>citrus-remote-maven-plugin</artifactId>
<version>${citrus.version}</version>
<executions>
<execution>
<id>generate-citrus-war</id>
<goals>
<goal>test-war</goal>
</goals>
</execution>
</executions>
</plugin>
</plugins>
</build>
私が欲しかったのgenerate-citrus-war
は、特定のプロファイルの実行を無効にすることであり、これが解決策でした:
<profile>
<id>it</id>
<build>
<plugins>
<plugin>
<groupId>com.consol.citrus</groupId>
<artifactId>citrus-remote-maven-plugin</artifactId>
<version>${citrus.version}</version>
<executions>
<!-- disable generating the war for this profile -->
<execution>
<id>generate-citrus-war</id>
<phase/>
</execution>
<!-- do something else -->
<execution>
...
</execution>
</executions>
</plugin>
</plugins>
</build>
</profile>