1

社内で構築した共通の JAR を共有するために、会社用に Maven Nexus サーバーをセットアップしようとしています。ワークステーション (ワークステーション 1 と呼びます) を使用して共通の JAR をビルドし、mvn deployそれを Nexus Maven サーバーにデプロイします。次に、それを必要とするプロジェクトの pom.xml の依存関係に追加し、mvn packageすべてが素晴らしいです。

ここで、共通コードを変更して同じバージョン番号で実行し、2 番目のプロジェクトでmvn deploy再実行すると、変更が反映され、すべてがうまくいきます。mvn package

次にワークステーション 2 に移動します。mvn package共通コードを必要とするプロジェクトで実行すると、すべて問題ありません。しかし、共通コードが変更され、mvn packageコマンドを再実行すると、ワークステーションのローカル リポジトリに移動し、Nexus の新しいバージョンではなく、そのバージョンを使用しているように見えます。

だから私の質問は次のとおりです...

  1. mvn deploynexus リポジトリの前にローカル リポジトリにコピーを保存しますか?
  2. ワークステーションのローカル リポジトリの前に、最新のファイルについてプロジェクトに nexus リポジトリをチェックさせるにはどうすればよいですか?

コードはaccept SNAPSHOTなので、ユーザーがアクセスしようとするたびに更新したいと思います。

4

3 に答える 3

1

1) maven はローカル リポジトリを参照し、失敗した場合にのみオンライン リポジトリ (nexus) に問い合わせます。

2) わからない

とにかく: (SNAPSHOTS を除いて) バージョンを更新せずに、リリースされたアーティファクトを変更しないでください!

于 2012-10-05T17:48:10.160 に答える
1

実行できますmvn -U package。-U を使用すると、Maven はリポジトリ (あなたの場合は Nexus) で依存関係の新しい SNAPSHOT バージョンを常にチェックします。

settings.xml に構成を追加して、常に新しいバージョンの依存関係を探すこともできます。設定リファレンスを参照してください。構成には名前が付けられています<updatePolicy>always</updatePolicy>

于 2012-10-05T18:20:25.863 に答える
1

わかった..settings.xmlのスナップショット設定に常に追加する必要がありました

于 2012-10-05T18:20:34.873 に答える