2010-12-17 11 views
11

私たちのSVNのレポでは、我々はこのようなタグを格納します。私は、プロジェクトAにMavenのリリースプラグインの「prepare」の目標を実行するとMavenリリースプラグインのタグフォーマットをカスタマイズするにはどうすればよいですか?

trunk 
    project_a 
    project_b 
branches 
    project_a 
     branch_x 
     branch_y 
    project_b 
tags 
    project_a 
     1.0 
     1.1 
    project_b 
     1.0 

、デフォルトでは「タグ/ project_a-XX」としてタグを作成し、上記の私のタグ命名スキームと一致しません。私は、これを見つけ出してタグを "tags/project_a/x.x"に変更するために、誰がリリース(すなわち、虚偽の人間)をしたかに依存しています。どのようにすれば、デフォルトで正しい形式を使用するようにリリースプラグインに指示できますか?

目標は、これを行うと主張し、「 tag」設定オプションがありますが、私はそれを設定した場合、以下のように「準備」:

​​

...その後、作成したタグである「タグ/ project_a/xx-SNAPSHOT "、つまり、リリースバージョン番号の代わりにプレリリースバージョン番号を使用しています。タグ名をPOMにハードコーディングすることも間違っているようです。

タグがデフォルトで正しいことを確認するにはどうすればよいですか?これらのバグの一つが固定されるまで、それはこのようになります

+0

を参照してください[私のコメント](http://stackoverflow.com/questions/4466714/how-to-customise-the-tag-format-of-the-:あなたのケースでは、あなたのような何かを行うことができますmaven-release-plugin#comment21031508_13886493)をご覧ください。この動作はv2.4で再び壊れています。実際に、リリースプラグインのv2.1は現在正しく動作している唯一のプラグインです。 –

答えて

9

リリースプラグインになりましたデフォルト@{project.artifactId}[email protected]{project.version}に、tagNameFormatconfiguration optionをサポートしています。

<plugin> 
    <groupId>org.apache.maven.plugins</groupId> 
    <artifactId>maven-release-plugin</artifactId> 
    <version>2.3.2</version> 
    <configuration> 
     <tagNameFormat>@{project.artifactId}/@{project.version}</tagNameFormat> 
    </configuration> 
</plugin> 
+1

** v2.1 **はこの動作が正しく動作する最新バージョンです。そのリリース以来、コードベースは壊れており、 '-SNAPSHOT'バージョンが使われています。詳細については、[このバグ](http://jira.codehaus.org/browse/MRELEASE-695)を参照してください。 –

+1

@ {project.version}のアットマークが重要であることに注意してください。同様の見た目の$ {project.version}は、pom.xmlからバージョンを取得するだけです。私は$と@の意義はありませんか? – Josh

2

することはできません。

  • MRELEASE-150:(スケジュールされていない)バージョン
  • MRELEASE-159に影響を与えることなく、タグにプレフィックスを追加することはできません:サポートリリースタグを生成するパターン(2.2の予定)
  • MRELEASE-259をリリースするときに使用するデフォルトのタグ/ラベルの設定を指定します)
+2

MRELEASE-159は2.2で修正済みとマークされ、他の2つのチケットは重複としてマークされます。私はもはやSVNを使用しませんが、新しいtagNameFormatオプションを記述したLyleの答えを変更しました。 –

0

あなたはreleaseVersionに渡している場合は、あなたがこれを行うことができます:

<tag>${project.artifactId}/${releaseVersion}</tag> 
関連する問題