0

私はいくつかのスクリプトをアンパックしようとしている親 pom を持っており、それらを内部および「pre-integration-test」フェーズで実行するため、すべての子モジュールに対してデフォルトで実行されます。

ここでの問題は、実行するたびに特定のディレクトリの内容を削除する必要があることです。統合前フェーズでは実行されない ant-plugin を使用してみました。また、プロジェクトのビルド中にいくつかのプロファイルを呼び出していることに注意してください。

mvn clean install -Pprofile1,profile2,integration
<plugin>
  <groupId>org.apache.maven.plugins</groupId>
  <artifactId>maven-antrun-plugin</artifactId>
  <executions>
   <execution>
      <id>compile</id>
      <phase>pre-integration-test</phase>
      <configuration>
      <tasks>
        <delete>
          <fileset dir="checkout\myproject\specific_directory\**.*"/>
        <delete/>
      </tasks>
      </configuration>
      <goals>
        <goal>run</goal>
      </goals>
   </execution>
 </executions>

全体として、ant clean を含む 4 つのプラグインがすべて統合前フェーズで実行されています。ant クリーンアップ タスクを除いて、他のすべては正常に実行されます。

4

1 に答える 1

2

ドキュメントと私の個人的な経験に基づいて、プラグインを間違った場所に設定したと思います。さらに、次の方法で mvn を呼び出しましたか。

mvn verify

統合テスト段階を実行します。

<build>
  [...]
  <plugin>
    <artifactId>maven-clean-plugin</artifactId>
    <version>2.5</version>
   <executions>
     <execution>
      <id>cleanup</id>
      <phase>pre-integration-test</phase>
      <goals>
        <goal>clean</goal>
      </goals>
      <configuration>
        <filesets>
          <fileset>
            <directory>some/relative/path</directory>
            <includes>
              <include>**/*.tmp</include>
              <include>**/*.log</include>
            </includes>
         </fileset>
        </filesets>
     </configuration>
    </execution>
    <executions>
  </plugin>
  [...]
</build>
于 2012-11-01T08:07:52.463 に答える