【发布时间】:2014-04-04 13:38:59
【问题描述】:
我只是使用 maven-release-plugin 发布一个版本,很明显:) 我父pom中的scm配置如下:
<scm>
<developerConnection>scm:svn:http:/localhost/svn/project/trunk/project/3. Implementation/02 Source code</developerConnection>
</scm>
如您所见,在主干之后,我们还有几个文件夹(RUP 样式),然后才能到达源代码。
mvn release:prepare 导致以下 scm 配置:
<scm>
<developerConnection>scm:svn:http://localhost/svn/project/tags/project-1.0.0/02 Source code</developerConnection>
</scm>
因此,不知何故,maven-release-plugin 设法将trunk/project/3. Implementation/02 Source code 替换为tags/project-1.0.0/02 Source code。
为什么不是tags/project-1.0.0,正如我所料?如果我运行mvn release:perform,插件将检查整个3. Implementation 目录。
供参考,我的插件定义如下:
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-release-plugin</artifactId>
<version>2.5</version>
<configuration>
<tagBase>http://localhost/svn/project/tags</tagBase>
</configuration>
</plugin>
</plugins>
【问题讨论】:
-
您是说
mvn release:prepare更改了您的POM 文件的<developerConnection>部分吗?或者你是从 Maven 调试中读到的? -
是的,它在创建标签之前对其进行了更改并将其提交到主干。之后它也将其更改回原始值。
标签: java maven svn maven-release-plugin