1

すべてのモジュールのインストール フェーズが完了した後に実行したいプロファイルがあります。私が持っていると言う

<modules>
    <a>
    <b>
    <c>
</modules>

次に、ID が であるプロファイルを定義しましたgenerate-reports

<profile>
    <id>generate-reports</id>
    <build>
        <plugins>
            <plugin>
                <groupId>org.codehaus.mojo</groupId>
                <artifactId>exec-maven-plugin</artifactId>
                <version>1.2.1</version>
                <executions>
                  <execution>
                    <id>run-cmd</id>
                    <!--DO NOT BIND WITH PHASE-->
                    <phase>install</phase>
                    <goals>
                      <goal>exec</goal>
                    </goals>
                   </execution>
                </executions>
                <configuration>
                  <executable>executable-name</executable>
                  <arguments>
                    <argument>-o</argument>
                    <argument>output.txt</argument>
                  </arguments>
                </configuration>
            </plugin>
        </plugins>
    </build>
</profile>

このプロファイルは、各モジュール内に入り、そこでレポートを生成するレポート生成プロファイルです。しかし問題は、各レポートのテストケースが実行されたらレポートを生成したい場合です。このプロファイルは、インストール中にモジュールごとに呼び出されるべきではありません。インストールが完了した後でのみ、起動する必要があります。言い換えれば、「mvn generate-reports」のようなもの、 mvn install generate-reports または「mvn generate-reports」を探しています (すでにmvn install個別に実行していると仮定します)。全体として、プロファイルをフェーズにバインドしたくなく、フェーズとは無関係にプロファイルを実行したいと考えています。

これを達成するためのプラグインはありますか?

4

1 に答える 1

1

目標の名前を呼び出すだけで、任意の目標を開始できます。たとえば、次のようになります。

mvn help:effective-pom

あなたの場合、これは次のようになります。

mvn exec:exec

>ここで説明されているように、次のこともできます。

mvn clean install exec:exec

これにより、レポート プラグインを呼び出す前に完全な「インストール」が完了するはずです。

于 2013-01-07T10:45:27.093 に答える