1

私のプロジェクトアーキテクチャは次のようなものです。

--Parent
  --Submodule1
  --Submodule2
--pom.xml(main)

親は、すべてのMavenプラグイン構成、ライブラリバージョンなどを保持するプロジェクトです。これは、すべてのサブモジュールの親であるすべてのプロジェクトの親です。次のように、pom.xml(main)でプラグインを構成します。

<plugin>
  <groupId>org.apache.maven.plugins</groupId>
  <artifactId>maven-release-plugin</artifactId>
  <version>2.3.2</version>
  <configuration>
    <tagBase>svn://192.168.5.213/hxbos/hxecp-src/tags/hxbos</tagBase>
    <branchBase>svn://192.168.5.213/hxbos/hxecp-src/branches/hxbos</branchBase>
    <remotetagging>true</remotetagging>
    <checkModificationExcludes>
      <checkModificationExclude>**/*.log</checkModificationExclude>
      <checkModificationExclude>**/*.jar</checkModificationExclude>
      <checkModificationExclude>**/system*</checkModificationExclude>
    </checkModificationExcludes>
  </configuration>
</plugin>

これは私のscm情報です:

<scm>
  <connection>scm:svn:svn://192.168.5.213/hxbos/hxecp-src/trunk/hxbos</connection>
  <developerConnection>scm:svn:svn://192.168.5.213/hxbos/hxecp-src/trunk/hxbos</developerConnection>
  <url>scm:svn:svn://192.168.5.213/hxbos/hxecp-src/trunk/hxbos</url>
</scm>

しかし、:mvn release:prepareを使用すると、エラーが発生します。

 The svn tag command failed.
 Command output:
 svn: “svn://192.168.5.213/hxbos/hxecp-src/trunk/hxbos” does not exist in 
 revision 0.

なぜリビジョン0なのですか?

4

1 に答える 1

0

確認すべき点がいくつかあります。

  • 私のSCMURLは次のようになります。

    scm:svn:https://subversion.company.com/svn/maven/trunk/corporate-parent

部分に注意してくださいhttps。あなたが示すscm:svn:svn、それがどのように機能するかわからない。

  • 以前につまずいた場所の1つ:httpsプロトコルを使用して既存のプロジェクトをチェックアウトしましたが、POMのSCM接続ブロックに「http」が含まれていました。不一致により、リリース時に問題が発生しました。したがって、チェックアウトに使用したプロトコルをPOMのSCM接続と一致させます。あなたがした場合

    svn checkout http://192.168.5.213/hxbos/hxecp-src/trunk/hxbos

その場合、SCMブロックは次のようになります。

<scm>
    <connection>scm:svn:http://192.168.5.213/hxbos/hxecp-src/trunk/hxbos</connection>
</scm>
  • マルチモジュールビルドを実行している場合は、すべてのPOMでSCMブロックを定義し、親POMから継承させないでください。

  • 最後になりましたが、リリースプラグインの最新バージョンを使用していることを確認してください。


編集:tagBaseおよびbranchBase URLでもhttp:またはhttps :(元のチェックアウトの実行に使用した方)を使用します。これらのURLに「svn:」プレフィックスが含まれていることに気付きました。ドキュメントには、tagBase「たとえば、http://svn.apache.org/repos/asf/maven/plugins/tagsURLはSVN URLであり、SCMプロバイダーとプロトコルは含まれていません。 」と書かれています。

于 2012-10-12T13:25:11.477 に答える