問題タブ [versions-maven-plugin]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
1 に答える
308 参照

java - Maven では、プロジェクトがリアクターの一部になるのはいつですか?

Versions Maven Pluginのソース コードを読んでいて、次のコード スニペットに気付きました。

一般に、プロジェクト (またはプロジェクトの親) がリアクタの一部になるのはいつですか? また、これが意味することは何ですか?

0 投票する
2 に答える
3430 参照

java - Maven バージョン プラグイン: maven 依存関係から rule.xml を参照しますか?

mvn versions:display-dependency-updates versions:display-plugin-updates目標を使用して、依存関係またはプラグインの更新を確認しています。

私のmavenプロジェクトは、次のようなマルチモジュールプロジェクトです。

望ましくないベータ版など、不要な更新がいくつかあるため、フィルターを作成しました (これは機能します)。私はそれを次のように使用します:

既存のファイルを参照する必要があるため、プロファイルとプロパティを使用するversion.rules.uri必要があります(デフォルトでは を指していますが、絶対パスで./build-config/rules.xmlもあります)。settings.xml

私はそれを避けたい:

  • 独立したbuild-configプロジェクトの公開
  • いくつかの uri を使用してこのプロジェクトを参照します。m2:myGroupId:myArtifactId:version:scope:jar/rules.xml

ここで質問: jar などのリポジトリ エントリの読み取りを可能にする Maven Wagon プラグイン (maven バージョン プラグインで使用される) の実装はありますか?

0 投票する
0 に答える
728 参照

maven-3 - Maven は SNAPSHOTS のみを最新バージョンに置き換えます

したがって、私はmaven 3.0.5を使用しており、プロジェクト内のすべての -SNAPSHOTS を同等の最新リリースバージョンに置き換えようとしています。誰かが私に maven プラグインのバージョンとマトリックスを指摘する前に:

http://mojo.codehaus.org/versions-maven-plugin/examples/advancing-dependency-versions.html

私はそれを調べましたが、これまでのところ、SNAPSHOT 以外の依存関係を無視するバージョン プラグインを取得できなかったことを付け加えさせてください。上記のリンクのマトリックスによると、 use-latest-releases の目標はまさに私が望むものであるはずですが、実行すると:

mvn バージョン:use-latest-releases

リリース バージョンを含むすべての依存関係は、最新にインクリメントされます。これは私が望んでいるものではなく、更新候補のリストからリリース バージョンを除外する方法が見つからないようです。

また、次のように、バージョンに -SNAPSHOT を含むアーティファクトのみを含めるようにバージョン プラグインを構成しようとしました。

すべてのスナップショットは「0-SNAPSHOTS」にバージョン付けされていることに注意してください。リリースには、 http://axelfontaine.com/blog/maven-releases-steroids.htmlで説明されているリリース プロセスの修正バージョンを実装しています。

さらに、基本的に次を使用して、プロパティに保存されているバージョン番号で同じことをしたいと思います。

mvn バージョン:更新プロパティ

すべてのリリース バージョンを無視し、更新対象の -SNAPSHOT バージョンのみを対象とします。

0 投票する
1 に答える
919 参照

jenkins - リリースとバージョンの maven プラグイン

Maven リリースと Maven バージョンのプラグインに問題があります。Jenkins では、ボタンを押すと自動的にリリースしたいと考えています。スナップショットの依存関係を削除するには、maven バージョン プラグインを使用します。2 つのプロジェクト A (最新のリリース 0.0.1、最新のスナップショット 0.0.2-SNAPSHOT) と、ProjectA に依存するプロジェクト B (0.0.2-SNAPSHOT) があり、プロジェクト B をリリースしたいとします。プロジェクト B の依存関係をアップグレードするにはどうすればよいですか?最新の利用可能なリリース バージョンに? このプロジェクトには 0.0.2 リリース バージョンがないため、maven バージョン プラグインの目標 "use-releases" は 0.0.2-SNAPSHOT 依存関係を変更しません。

私の質問は次のとおりです。スナップショットの依存関係を自動的に削除し、シナリオで利用可能な最新のリリース バージョンに置き換えるにはどうすればよいでしょうか?

0 投票する
0 に答える
289 参照

java - マルチモジュール プロジェクト (アグリゲーターを使用) の mvn versions:set を実行する場所は?

ビルド/集約pomを使用したマルチモジュールのmavenプロジェクトがあります。私のプロジェクトでは、バージョン番号が設定された共通の親 pom があり、すべての子モジュールが親バージョンを継承します (つまり、どの子 pom にもバージョン情報がありません)。ただし、ビルド pom には独自のバージョン番号があり、親 pom を継承しません。

プロジェクトのビルド バージョン (つまり、親バージョン) を更新しようとしています。親バージョンを更新することで、子モジュールの親へのすべての参照も更新する必要があります。元:

ただし、バージョン プラグインを適切に使用する方法がわかりません。これが機能することがわかった唯一の方法は、次を実行することです。

親の pom バージョンを更新しますが、子モジュールに再帰しません。

これは「正しい」ようには見えません.2つのステップであり、update-child-modulesを本来の方法で実際に使用していません。

どのモジュールからバージョンを呼び出す必要がありますか: 目標を設定しますか? 親とすべての子のバージョンを自動的に更新するワンステップ ソリューションはありますか?

0 投票する
4 に答える
15804 参照

maven - Maven バージョン-maven-plugin バージョン プラグイン 2.2 -- Maven Uncle Situation

Maven は 3.1.0 です。

プロジェクトの pom.xml で versions-maven-plugin:2.2 を使用しています (以下を参照)。通常の pom.xml ファイル構成とは別に、メイン コードのスナップショットを以下に示します。

mvn clean installを実行すると、正常にビルドされます。

:私のプロジェクトには、グループID「com.company.product」が同じグループIDである展開親アーティファクトに依存している親セクションがあります。上に貼り付けました)が、展開親は別のリポジトリ/プロジェクトの成果物です。

mvn versions:set -DnewVersion=0.0.7を実行すると、次のエラー メッセージが表示されます。

今、versions-maven-plugin バージョンを 2.1 (以前に使用していたもの) に戻すと、上記のmvn versions:set -DnewVersion=0.0.7コマンドが正常に機能し、pom.xml ファイルが正常に変更されます。<version>0.0.7</version>ツールの親アーティファクト用。

バージョン 2.2 では、エラーが発生し、バージョンが 0.0.7 に変更されません。

  1. 2.2 が失敗する理由はありますか? それを解決するために何ができますか?
0 投票する
1 に答える
2049 参照

maven - Maven アップデート バージョンの目標は、Jenkins で古いバージョンをビルドします

任意のバージョン番号でリリース成果物を生成できるようにする必要がある Jenkins/maven ビルドがあります。バージョン番号は、パラメーターとしてビルド ジョブに渡されます。versions:setバージョンを pom.xml にあるものから $VERSION パラメータに更新するために使用しています。ビルドが実行されると、実際には maven が pom.xml の作業コピーのバージョンを更新しているように見えますが、古いバージョン番号でアーティファクトをビルドします

pom.xml:

Jenkins ジョブで最上位の Maven ターゲットを呼び出します。

私のビルド出力は次のようになります ($VERSION が 0.1.2 の場合)

最初の実行は古いバージョンでビルドされますが、作業ディレクトリが元に戻されていない場合、その後の実行は更新された pom.xml の新しいバージョンで正しくビルドされることに気付きました。成果物がビルドされる前に、pom ファイルを新しいバージョンで更新するにはどうすればよいですか?

制約:

  • pom.xml に変更を加えることは可能かもしれませんが、それは私たちの直接の管理下にあるわけではなく、あまり実用的な解決策ではありません。理想的な世界では、pom はすでに正しいバージョンで更新されており、これをまったく行っていません。
  • Mavenビルドの前にシェルステップを追加して、pom.xmlなどでsed replaceを実行できることはわかっています。それは機能しますが、醜く、より複雑な pom ではうまくスケーリングできません。ネイティブの Maven ソリューションが非常に好まれます。
  • これをジェンキンスとは別にテストしました(つまりmvn versions:set -DnewVersion=0.1.2)、動作は同じです