2013-05-28 42 views
1

该问题的主要思想是:是一种指定maven版本在执行发布时应该跳过标记的方法吗?Maven release without tagging

我有以下上下文:我们有一个TFS(团队基金服务器)作为我们的软件版本的系统。我们还使用与TFS“交谈”的svn桥,开发人员和CI工具使用它。当执行mvn release:clean release:prepare release:perform时,maven抱怨它无法找到或创建标签(以某种方式将svn的标签命令翻译成tfs崩溃中的类似命令)。任何建议表示赞赏。

错误看起来是这样的:

28-May-2013 15:51:04 [ERROR] Failed to execute goal org.apache.maven.plugins:maven-release-plugin:2.4.1:branch (default-cli) on project spring-hibernate-mysql: The scm url is invalid. 
28-May-2013 15:51:04 [ERROR] - scm:svn:https://${TFS_SERVER}:${PORT}/${PATH_TO_APP}/tags/dbDiagnostic-1.0.0-RELEASE url isn't a valid svn URL. 
28-May-2013 15:51:04 [ERROR] -> [Help 1] 

我提到的网址就可以了,因为在这之前的步骤中,将CI计划是一个“checkout sources”的步骤用相同的URL。

+0

你可以显示你的pom.xml文件的scm区域吗? – khmarbaise

回答

1

Maven发布插件依赖于svn标签,因为它在发布过程中检出标签的版本。所以答案是:不,没有标签就没有办法发布。

上面的svn URL无效,您应该考虑通过解析变量替换来修复它。

+0

谢谢Torsten的答案。该变量已定义。我刚刚用绑定变量替换错误日志以隐藏路径。 – dumitru

+0

@acdcjunior:感谢您的编辑 – dumitru

1

你的问题:

您可以通过设置remoteTagging属性中描述禁用远程标签:http://maven.apache.org/maven-release/maven-release-plugin/prepare-mojo.html#remoteTagging

注意作品与SVN 。

然而,此错误的原因很可能是因为行家未能创建在上一步的标签,因为如身份验证失败或URL配置不正确(请参阅“标记基础”属性&等)。

+0

感谢您的信息。我以前使用过** remoteTagging **,并发现它在我的上下文中不起作用。我也尝试发出maven在命令行中执行的命令,并且没问题,但不知何故,来自codeplex的插件和svnbridge不能一起工作 – dumitru

相关问题