Maven pom.xml、SCM和发行版

Maven pom.xml、SCM和发行版,maven,release,pom.xml,maven-release-plugin,Maven,Release,Pom.xml,Maven Release Plugin,我想做一个mvn发行版:prepare,它将从版本中删除“-SNAPSHOT”,并在SVN中标记它 我在pom.xml中有以下设置: <scm> <connection>scm:svn:http://subversion.local:3690/svn/projects/x/trunk</connection> <developerConnection>scm:svn:http://subversion.local:3690/svn/proj

我想做一个mvn发行版:prepare,它将从版本中删除“-SNAPSHOT”,并在SVN中标记它

我在pom.xml中有以下设置:

<scm>
  <connection>scm:svn:http://subversion.local:3690/svn/projects/x/trunk</connection>
  <developerConnection>scm:svn:http://subversion.local:3690/svn/projects/x/tags</developerConnection>
  <url>scm:svn:http://subversion.loi.local:3690/svn/projects/x/tags</url>
 </scm>

scm:svn:http://subversion.local:3690/svn/projects/x/trunk
scm:svn:http://subversion.local:3690/svn/projects/x/tags
scm:svn:http://subversion.loi.local:3690/svn/projects/x/tags
但这些并不像我想要的那样。相反,它从/tags获取所有信息,并在/tags下重新标记它

同样,我想要的是,从头部取出“-SNAPSHOT”并将其标记在/tags

下,
标记表示只读连接配置(“连接”元素)、读写连接(“developerConnection”)和公开可见的URL。它与标记无关。在小型本地网络中,这3个参数通常相同

对于tag base,您需要配置发布插件:

<plugin>
    <groupId>org.apache.maven.plugins</groupId>
    <artifactId>maven-release-plugin</artifactId>
    <configuration>
        <tagBase>scm:svn:http://subversion.local:3690/svn/projects/x/tags</tagBase>
        <autoVersionSubmodules>true</autoVersionSubmodules>
    </configuration>
</plugin>

org.apache.maven.plugins
maven发布插件
scm:svn:http://subversion.local:3690/svn/projects/x/tags
真的

我正在成功使用maven release插件,developerConnection指向主干


当准备发布时,标签会在
/tags
目录下创建(插件也会在标签的pom.xml中更新
连接
developerConnection

只想说tagBase参数与SVN相关!
(CVS没有使用它,例如。)

你是对的,但是当我试图执行release时:执行它的失败。它表明目标目录中没有pom.xml。你能帮我一下吗。