mvn scm プラグインを使用して毎日のタグをチェックアウトし、そのバージョンのコードからアセンブリを作成しようとしています。scm プラグインを構成しましたが、単体テストを実行しないように指示できないことを除いて、すべてが正常に機能しています。
私は試した:
- -Dmaven.test.skip=true コマンド ライン パラメーターを渡す
- Surefire プラグインがテストをスキップするプロファイルを作成し、そのプロファイルを scm 構成の「プロファイル」セクションにリストします。
- 環境変数として「maven.test.skip=true」を設定する
いずれの場合も、scm プラグインが構成で実行するように指示したゴールの実行を開始すると (以下を参照)、単体テストも実行されます。
以下は、プロファイルを使用してテストをスキップするために使用した例です。
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-scm-plugin</artifactId>
<version>1.0</version>
<configuration>
<goals>install,assembly:assembly</goals>
<profiles>skiptest</profiles>
</configuration>
</plugin>
そして、これはプロファイルです (私はこれをプロジェクトの pom.xml で定義しました):
<profiles>
<profile>
<id>skiptest</id>
<build>
<plugins>
<plugin>
<artifactId>maven-surefire-plugin</artifactId>
<configuration>
<skip>true</skip>
</configuration>
</plugin>
</plugins>
</build>
</profile>
</profiles>
チェックアウトとブートストラップを行うために使用するコマンドは次のとおりです。
mvn scm:bootstrap -DscmVersion=daily-20110427-421 -DscmVersionType=tag
Linux マシンで mvn 2.2.1 を実行しており、CVS リポジトリからチェックアウトしています。これは既存のプロジェクトであり、継続的な統合とタグ付けがすべて実行されています。毎日のタグをチェックアウトして、そこからアセンブリを作成したいだけです。
どんなヒントでも大歓迎です。
編集:以下の回答で動作するようになりましたが、maven-scm-plugin バージョン 1.1 にアップグレードした後でのみです。明らかに、1.0 はプロファイルを伝搬しませんでした。