8

プロジェクトをリリースするときは、通常、毎回同じです。release:prepare に追加して、バッチ モードでパターンをリリースできる引数やプロパティはありますか?

例:

「MyProject」のリリースバージョンは?(company.jar.site:myproject) 0.0.1: :
"MyProject" の SCM リリース タグまたはラベルとは何ですか? (company.jar.site:myproject) MyProject-0.0.1: :
「MyProject」の新開発バージョンとは?(company.jar.site:myproject) 0.0.2-SNAPSHOT: :

このようなことをするといいでしょう:

mvn -B release:perform -DreleaseVersion:$nextMinorVersion$ または
mvn -B release:perform -DreleaseVersion:$nextPatchVersion$ または
mvn -B release:perform -Dtag:v$nextPatchVersion$ または
mvn -B release:perform -Dtag:v$nextPatchVersion$-someCustomNaming

このようなものが存在しない場合は、そのためのカスタム Mojo を作成します。

別の方法として、上記のプロンプトでは通常、最初の質問にデフォルトで答え、2 番目の質問に 'v' + 現在のバージョン、最後の質問に次のマイナーを入力します。これらを何らかの方法で変更できれば、差し迫った問題は解決します。

前もって感謝します。

4

3 に答える 3

2

あなたのコメントの後、部分的な答え:

タグ名を変更するには、-Dtag=xxx引数 to を使用しますrelease:prepare。詳細については、release:prepare のドキュメントを参照してください。

テストされていないコードの警告

これを完全に自動化するには、タグ名を設定する pom.xml に構成エントリを追加する必要があります。

<maven-release-plugin>
   <configuration>
       <tag>parent-${releaseVersion}</tag>
   </configuration>
</maven-release-plugin>
于 2009-06-15T15:56:55.860 に答える
1

私がそれを行った方法は、プロパティファイルを使用して非対話型リリースを実行することです

アグリゲータープロジェクト(packages:pomを持つプロジェクト)のルートにrelease.propertiesを作成し、プロジェクトごとに次の形式の2つのプロパティを追加します。

project.rel.<groupId>\:<artifactId>=<releaseVersion>
project.dev.<groupId>\:<artifactId>=<nextSnapshotVersion>

タグに特定のリテラルを使用する場合は、次のプロパティを追加します

scm.tag=<tagLiteral>

以下は、両方の処理が行われる例です(各モジュールのバージョンを指定し、SCMでタグ付けするために使用されるリテラルを定義します)。

scm.tag=my-project-0.2.1
project.rel.org.monachus.monkeyisland\:my-project=0.2.1
project.dev.org.monachus.monkeyisland\:my-project=0.2.2-SNAPSHOT
project.rel.org.monachus.monkeyisland\:module-a=0.1.1
project.dev.org.monachus.monkeyisland\:module-a=0.1.2-SNAPSHOT
于 2012-04-03T15:16:01.040 に答える