1

親:

    <plugins>
        <plugin>
            <groupId>org.codehaus.mojo</groupId>
            <artifactId>buildnumber-maven-plugin</artifactId>
            <version>1.0</version>
            <executions>
                <execution>
                    **<inherited>false</inherited>**
                    <goals>
                        <goal>create</goal>
                    </goals>
                </execution>
            </executions>
            <configuration>
                <format>${project.version}-b{0,number}</format>
                <items>
                    <item>buildNumber0</item>
                </items>
                <doCheck>false</doCheck>
                <doUpdate>false</doUpdate>
            </configuration>
        </plugin>
    </plugins>

<modules>
    <module>module1</module>
    <module>module2</module>
</modules>

'mvn buildnumber:create'中に、各モジュールはビルド番号を生成します。サブモジュールでオフにすることはできますか?つまり、「mvn buildnumber:create」の実行中に、ビルド番号は親モジュールで1回だけ生成される必要があります。

set <phase>none</phase>and <skip>true</skip>in submodulesを試しましたが、変更はありませんでした。

提案?

4

3 に答える 3

1

私は以下を調べます:

<pluginManagement>...</pluginManagement>

要素: http://maven.apache.org/pom.html#Plugin_Management

プラグイン管理セクションを使用して、マスター/親/ルート pom ファイルでプラグインを定義し、グループ/アーティファクトの組み合わせを指定するだけで、子 pom ファイルでプラグインの動作を有効にすることに成功しました。

あなたの場合、私は次のことを試してみます...

ルート pom.xml で ( <pluginManagement> 要素に注目してください):

...
<build>
  ...
  <pluginManagement>
    <plugins>
      <plugin>
        <groupId>org.codehaus.mojo</groupId>
        <artifactId>buildnumber-maven-plugin</artifactId>
        <version>1.0</version>
        <executions>
            <execution>
                <goals>
                    <goal>create</goal>
                </goals>
            </execution>
        </executions>
        <configuration>
            <format>${project.version}-b{0,number}</format>
            <items>
                <item>buildNumber0</item>
            </items>
            <doCheck>false</doCheck>
            <doUpdate>false</doUpdate>
        </configuration>
      </plugin>
    </plugins>
  </pluginManagement>
...
</build>
...

次に、(NO <pluginManagement> 要素) によって、module1 (または module2) pom.xml で動作を有効にします。

<build>
  ...
  <plugins>
    <plugin>
      <groupId>org.codehaus.mojo</groupId>
      <artifactId>buildnumber-maven-plugin</artifactId>
    <plugin>
  <plugins>
  ...
</build>
...

これはすべて記憶によるものです。試してみて、うまくいかない場合はお知らせください。

于 2012-02-22T21:28:56.220 に答える
-1

プラグインのバージョン 1.3 を使用するように pom を更新し、各サブモジュールでプラグインを true で構成します。

于 2014-10-16T17:27:29.590 に答える