Maven 3.0.4 を使用しています。私はマルチモジュールプロジェクトを持っていますが、空想的でもエキゾチックでもありません:
/pom.xml (aggregator pom)
parent/
pom.xml
childA/
pom.xml (inherits from ../parent/pom.xml)
childB/
pom.xml (inherits from ../parent/pom.xml)
ルート レベルにトランク/ブランチ/タグがあります。
すべての pom には scm セクションがあります。
pom.xml:
<scm>
<developerConnection>scm:svn:https://mysvnrepo.com/svn/project/trunk</developerConnection>
</scm>
parent/pom.xml:
<scm>
<developerConnection>scm:svn:https://mysvnrepo.com/svn/project/trunk/parent</developerConnection>
</scm>
childA/pom.xml:
<scm>
<developerConnection>scm:svn:https://mysvnrepo.com/svn/project/trunk/childA</developerConnection>
</scm>
他の人がここと JIRA の複数のバグ レポートで報告しているように、mvn release:prepare を実行すると、作成されるタグはトップ レベルのプロジェクトですが、トランクにタグを付ける代わりに、1 レベル上にタグを付けています。したがって、プロジェクトのルートは次のようになります。
/
trunk/
branches/
tags/
project-0.0.1/
trunk/
branches/
tags/
私が見つけたこれに対する解決策はないようです。バグレポートは、特定のバージョンで修正された後、他のバージョンでリグレッションが導入されたことを示唆しています。また、修正されたと報告されているバージョンでさえ、修正されていないという報告もあります。
リリース プラグインの v2.0、2.1、2.4.1 を試しました。最上位の scm URL に末尾の「/」を追加しました。何も役に立ちません。
セットアップに明らかに問題がありますか?
更新:アグリゲーターと親 pom を分離する正当な理由がなかったので、それらを組み合わせて、リリース プラグインが期待どおりに動作するようにしました。これがそれほどエキゾチックな設定だとは思わなかったので、これがうまくいかなかったことにまだ驚いています。専門家がサンプル プロジェクトを希望する場合は、喜んで試してみます。