0

各変更がコンパイルされ、Maven スナップショットとしてデプロイされる継続的インテグレーション ビルド プロセスがあります。人々が満足するバージョンがコンパイルおよびテストされたら、これをリリース バージョンとともにローカルの Maven リポジトリにデプロイできるようにしたいと考えています。

これを行うための「Maven の方法」は、ソースを再度取得し、バージョン (versions:set など) を設定し、もう一度コンパイルしてテストし、結果のアーティファクトをデプロイすることです。このプロセスには時間がかかるため、すべての手順を再度行うことは避けたいと思います。

最初のコンパイル ステップで生成されたアーティファクトを取得し、バージョンを更新して、再コンパイルせずにそのままデプロイする方法はありますか?

4

1 に答える 1

0

あなたが「MavenWay」であると信じていることは必ずしも真実ではありません。ただし、任意のjarを別のグループ/名前/バージョンのMavenアーティファクトとしてデプロイする場合は、mavenデプロイプラグインを使用してデプロイできます。

mvn deploy:deploy-file -Durl=/path/to/remote/repository -Dfile=/path/to/myjar-1.22.jar -DgroupId=somegroup -DartifactId=yourjar -Dpackaging=jar -Dversion=1.23

上記の例では、myjar-1.22をyourjar-1.23としてリモートリポジトリにデプロイします。

ただし、これには注意が必要です。多くの場合、元のバージョン情報はプロジェクト自体の内部で使用されます(jarメタデータなどとして)

私の意見では、最善の方法はバージョン番号を変更するのではなく、ソフトウェアのライフサイクル全体を通してバージョン番号を変更することです。ソース管理のリビジョン/ビルド番号を利用して、常に一意のバージョンラベルを取得できるようにします。たとえば、アーティファクトに名前を付けます。myjar-1.0.3345.23.jarここで、1.0はメジャー/マイナーバージョン、3345はソース管理リビジョン番号、23はビルド番号です。

于 2013-02-20T21:43:30.513 に答える