1

私は3つのMavenプロジェクトを持っています。A、B、C としましょう。これらのプロジェクトはそれぞれ、フラットなディレクトリ構造を持つマルチモジュール プロジェクトです。

プロジェクト C はプロジェクト B に依存します。一方、プロジェクト B はプロジェクト A に依存します。

現時点では、3 つのプロジェクトすべての Hudson を使用して継続的インテグレーションを正常に実行できます。

私がやりたいことは、maven-release-plugin を使用して、3 つのプロジェクトすべてを一度にリリースすることです。私が理解している限り、maven-release-plugin では、依存関係が SNAPSHOT バージョンではなく完全なリリースである必要があります。

開発段階で Eclipse ワークスペースの解決がプロジェクトの相互依存性を維持できるように、SNAPSHOT バージョン番号を維持する必要があります。

これらのプロジェクトには階層的な依存関係があるため、依存関係の SNAPSHOT バージョンを連続して更新しながら、プロジェクトを順番にリリースする必要があります。

どうすればこれを達成できるかについてのアイデアはありますか?

maven-release-plugin がこれを達成できるとは思わない。少なくとも、私が学んだことから。プロジェクトがリリースされると、依存関係のバージョン番号を更新する別の Hudson ジョブを実行する必要があると思います。

4

1 に答える 1

2

ビルド シーケンスの作成についてはどうでしょうか。

次の構成を検討すると、次のジョブが得られます。

  • Project-A-Release-Job
  • プロジェクト B リリース ジョブ
  • プロジェクト-C-リリース-ジョブ

さらに
、Project-A-Release-Job がビルドされた場合、Project-B-Release-Job がトリガーされ、
Project-B-Release-Job がビルドされた場合、Project-C-Release-Job がトリガーされます。

この場合、これらのプロジェクトのいずれかをリリースすると、次のプロジェクトが強制的にリリースされます。

scm プラグインと組み合わせて maven-versions-plugin を順番に使用することを検討してください
。 1. 新しいリリース/スナップショット バージョンがリポジトリにあることを確認します
。 2. POM の依存関係バージョンを
更新します。

于 2011-08-16T14:06:40.323 に答える