私はMavenでプロジェクトをリリースしようとしています。私のプロジェクトPOMには-SNAPSHOTの依存関係が含まれているので、自動的にリリースを実行するには、 "maven-release-plugin"の目標に基づいて、次のmavenコマンドを使用します:mvn release:prepare-with-pom依存関係を解放して解決するためのプロジェクトのpom.xmlを準備します。-SNAPSHOTのバージョンは手作業で編集することなく自動的に作成されます。 残念ながら、私はこれがコマンドラインからのインタラクティブモードでのみ動作していることを発見しました。私はこれが手動でのやりとりなしにできるのではないかと思っています。私はCIサーバとしてBambooを使用しており、これを計画に入れてこのプロジェクトを自動的に実行したいと考えています。 --non-interactiveまたは-B引数が機能していない、実際に私が-Bまたは--non-interactive引数を使用していて、Mavenの目標が失敗している場合Mavenリリース:非対話型で準備する
出力mvnリリース:ポンポンはこれです:
H:\APPS\dev\cmtest\test-dependency\trunk>mvn release:prepare-with-pom -DdryRun=t
rue
[INFO] Scanning for projects...
[INFO] ------------------------------------------------------------------------
[INFO] Building test-dependency 0.0.4-SNAPSHOT
[INFO] ------------------------------------------------------------------------
[INFO]
[INFO] --- maven-release-plugin:2.0:prepare-with-pom (default-cli) @ test-depend
ency ---
[INFO] Resuming release from phase 'check-dependency-snapshots'
[INFO] Checking dependencies and plugins for snapshots ...
There are still some remaining snapshot dependencies.: Do you want to resolve th
em now? (yes/no) no: : yes
Dependency type to resolve,: specify the selection number (0:All 1:Project Depe
ndencies 2:Plugins 3:Reports 4:Extensions): (0/1/2/3) 1: : 1
Resolve Project Dependency Snapshots.: '${artifactGroup}:${artifactId}' set to releas
e? (yes/no) yes: : yes
What is the next development version? (0.1.3-SNAPSHOT) 0.1.3-SNAPSHOT: :
'${artifactGroup}:${artifactId1}_1' set to release? (yes/no) yes: : yes
What is the next development version? (0.0.2-SNAPSHOT) 0.0.2-SNAPSHOT: :
'${artifactGroup}:parent-pom' set to release? (yes/no) yes: : yes
What is the next development version? (0.0.3-SNAPSHOT) 0.0.3-SNAPSHOT: :
What is the release version for "test-dependency"? (${artifactGroup}:${artifactId1}_2) 0.0.4: :
What is SCM release tag or label for "test-dependency"? (${artifactGroup}:${artifactId1}_2) test-dependency-0.0.4: :
What is the new development version for "test-dependency"? (${artifactGroup}:${artifactId1}_2) 0.0.5-SNAPSHOT: :
[INFO] Transforming '${artifactId1}_2'...
[INFO] Updating ${artifactId1}_1 to 0.0.1
[INFO] Updating ${artifactId1} to 0.1.2
[INFO] Generating release POMs...
[INFO] Generating release POM for 'test-dependency'...
[INFO] ------------------------------------------------------------------------
[INFO] BUILD SUCCESS
[INFO] ------------------------------------------------------------------------
だから、あなたは私が非対話モードでは、このMavenのコマンドを実行するためにトリックを見つけるために助けてくださいすることができます
? ありがとうございました
はい、私はそれを考慮しませんでした。アイデアは、私はすべての子プロジェクトのバージョンを保持する親pom.xmlがあるということです。私はこの方法を選択して、各リリースでどのバージョンの子どもがどのバージョンのプロジェクトを行っているかを常に知ることができます。 私が持っている問題はリリースプロセスに関するものです。なぜなら、子プロジェクトをリリースしたいとき、親プロジェクトのリリースバージョンを尋ねるからです。だから私はここで循環的な問題があります:私は自分の子プロジェクトのバージョンを宣言しておく必要があるので、最初はparent.pomを解放できません。親リリースが必要なので、最初に子どもをリリースすることはできません – Asgard