0

継続的インテグレーション サーバーにデプロイされたプロジェクトの適切な Maven プロファイル構成に問題があります。

私のプロジェクトでは、毎日のビルド段階でのテスト中にのみ含める必要があるリソースと、夜間のビルド中に含める必要があるリソースがいくつかあります。ビルドプロセスが失敗するため、両方を同時に含めることはできません。同時に 1 つのプロファイルをアクティブ化することで、これをローカルで実現できます。

継続的インテグレーション サーバーは次の maven コマンドを実行します:
-毎日のビルド中:

mvn クリーン パッケージ -Pci -Dci

-夜間のビルド中

mvn clean install -Dmaven.test.failure.ignore -Pci,nightly -Dci -Dnightly

ご覧のとおり、ナイトリー ビルド コマンドにはデイリー ビルド コマンドで定義された maven 変数とプロファイルが含まれています。

具体的には、3 つの個別のプロファイルが 必要
です 。 CI サーバーで使用されるナイトリー ビルド)


どうすればそれを達成できますか?私はほとんどすべてを試しました。CI サーバーの再構成はオプションではありません。

4

1 に答える 1

2

Jenkins を CI として使用して、同じビルドを異なるプロファイルで構成する必要がある場合、通常はプロファイルと同じ数のビルドを作成するため、各ビルドは正しい構成を使用します。

新しいビルドを追加できない場合は、おそらく exec プラグイン ( http://mojo.codehaus.org/exec-maven-plugin/ ) などを使用して回避策を作成し、ftp (または別のもの)。また、ビルド間で適切なリソースを置き換えるために、cron ジョブ (または同等のもの) を作成する必要があります。夕方には夜用のリソースを配置し、朝には日中用のリソースを配置します。

しかし、このプロセスがいかに面倒かを考えると、新しいビルドを追加してみる方がよいでしょう。

于 2012-11-15T14:50:46.203 に答える