15

親POMには、次のものがあります。

 <pluginManagement>
            <plugin>
                <artifactId>maven-resources-plugin</artifactId>
                <version>2.5</version>
                <executions>
                    <execution>
                       <id>execution 1</id>
                       ...
                    </execution>
                    <execution>
                       <id>execution 2</id>
                       ...
                    </execution>
                    <execution>
                       <id>execution 3</id>
                       ...
                    </execution>
                </executions>
            </plugin>
        <pluginManagement>

私の質問は次のとおりです。

  1. <execution>サブプロジェクトで一部を無効にすることは可能ですか?たとえば、 execution 31 と 2 のみを実行してスキップすることはできますか?
  2. サブプロジェクトの実行を完全にオーバーライドすることは可能ですか? たとえば、サブプロジェクトに があり、これのみを実行し、親 POM で実行 1,2,3 を実行しexection 4たくない場合などです。execution
4

1 に答える 1

24

簡単なオプションは、<phase>none</phase>各実行をオーバーライドするときに使用することです。たとえば、実行 3 のみを実行するには、pom で次のようにします。

<build>
  <plugins>
    <plugin>
        <artifactId>maven-resources-plugin</artifactId>
        <version>2.5</version>
        <executions>
            <execution>
                <id>execution 1</id>
                <phase>none</phase>
                ...
            </execution>
            <execution>
                <id>execution 2</id>
                <phase>none</phase>
                ...
            </execution>
            <execution>
                <id>execution 3</id>
                ...
            </execution>
        </executions>
    </plugin>
    ...
  </plugins>
  ...
</build>

これは公式に文書化された機能ではないため、このサポートはいつでも削除される可能性があることに注意してください。

推奨される解決策は、おそらくセクションが定義されprofilesているものを定義することです。activation

<profile>
  <id>execution3</id>
  <activation>
    <property>
      <name>maven.resources.plugin.execution3</name>
      <value>true</value>
    </property>
  </activation>
  ...

サブプロジェクトでは、必要なプロパティを設定するだけです:

<properties>
    <maven.resources.plugin.execution3>true</maven.resources.plugin.execution3>
</properties>

プロファイルのアクティブ化の詳細については、http: //maven.apache.org/settings.html#Activationを参照してください。

于 2013-07-03T08:18:40.300 に答える