我使用maven 发布插件 2.3.2和maven 3.0.4,我在准备和分支阶段遇到了问题。
我有一个像http:/svn.pyhost.com/projects/App1
. App1包含 3 个目录:
App1/trunk
App1/branches
App1/tags
树干包含
App1/trunk/ApplicationParent
App1/trunk/ApplicationChild
所以,我想创建一个只有ApplicationParent
and的新标签ApplicationChild
。所以,我在我的pom.xml
地方创建了配置,我放了这样的东西:
<scm>
<connection>http:/svn.pyhost.com/projects/App1/trunk</connection>
<developerConnection>http:/svn.pyhost.com/projects/App1/trunk</developerConnection>
<url>http:/svn.pyhost.com/projects/App1/trunk</url>
</scm>
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-release-plugin</artifactId>
<version>2.3.2</version>
<configuration>
<tagBase>http:/svn.pyhost.com/projects/App1/tags</tagBase>
<branchBase>http:/svn.pyhost.com/projects/App1/branches</branchBase>
</configuration>
</plugin>
</plugins>
</build>
接下来,我执行mvn release:prepare
并 maven 创建了包含ApplicationParent-1.0
所有 fromApp1 (trunk, branches and tags)
的新标签,我不知道为什么,因为scm
我只设置了
http:/svn.pyhost.com/projects/App1/trunk
所以我希望从主干字典中标记所有内容,但是 Maven 创建ApplicationParent-1.0
并放置了trunk, branches and tags
目录。为什么 ?
所以,我将我的 scm 更改为http:/svn.pyhost.com/projects/App1/trunk/ApplicationParent
并mvn release:prepare
再次执行,现在很好,在 ApplicationParent-1.1 中,我全部来自主干目录。
但是,如果我执行mvn release:branch
using http:/svn.pyhost.com/projects/App1/trunk/ApplicationParent
,我只能有新的分支ApplicationParent
,但我需要为所有主干词典创建一个分支,所以我需要更改scm
为http://svn.pyhost.com/projects/App1/trunk/
,如果我想创建分支很好。但是如果我需要创建新标签release:perform
,我会遇到上面描述的问题。
为什么我不能同时使用http:/svn.pyhost.com/projects/App1/trunk
路径release:perform
和release:branch
?