当我尝试使用Maven版本插件时,它在mvn release:prepare
上失败并出现以下错误:
[ERROR] BUILD FAILURE [INFO] ------------------------------------------------------------------------ [INFO] Unable to tag SCM Provider message: The svn tag command failed. Command output: svn: Repository UUID '3da89ab5-aa79-4544-a1de-ca02bd87a2ce' doesn't match expect ed UUID '221b71b0-5d3c-7840-b153-25850b4df36e'
我确定存储库UUID是221b71b0-5d3c-7840-b153-25850b4df36e,并且已经测试了签入和签出。
我删除了所有本地源代码并再次检出,仍然是同样的错误。
我已经确认在svn条目文件中,它引用了正确的UUID 221b71b0-5d3c-7840-b153-25850b4df36e。
我已经运行svnlook uuid e:\repositories\myrepo
并返回221b71b0-5d3c-7840-b153-25850b4df36e。
但不知何故,Maven认为UUID尝试标记时会有所不同。
我可以使用svn客户端创建自己的标签。我的svn服务器在我的机器上是本地的,它是在Vista下运行的VisualSVN。我也可以使用Eclipse检查文件。
我的斗智尽头!我唯一能想到的是本地机器名称与存储库URL不同。即,我正在使用DynDNS将流量路由到repo.mydomain.com,并且它已在我的路由器中设置为将流量路由到适当的服务。换句话说,操作系统认为我的机器名称是A_NAME,但我通过URL repo.mydomain.com访问svn。因为这个,maven有可能感到困惑吗?
在Maven和VisualSVN之间,我不知道该怎么做。请帮忙!
最后注意事项:当我使用-e param运行Maven时,我得到了这个堆栈跟踪:
[INFO] Trace org.apache.maven.BuildFailureException: Unable to tag SCM Provider message: The svn tag command failed. Command output: svn: Repository UUID '3da89ab5-aa79-4544-a1de-ca02bd87a2ce' doesn't match expect ed UUID '221b71b0-5d3c-7840-b153-25850b4df36e' at org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoals(Defa ultLifecycleExecutor.java:715) at org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeStandalone Goal(DefaultLifecycleExecutor.java:569) at org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoal(Defau ltLifecycleExecutor.java:539) at org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoalAndHan dleFailures(DefaultLifecycleExecutor.java:387) at org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeTaskSegmen ts(DefaultLifecycleExecutor.java:284) at org.apache.maven.lifecycle.DefaultLifecycleExecutor.execute(DefaultLi fecycleExecutor.java:180) at org.apache.maven.DefaultMaven.doExecute(DefaultMaven.java:328) at org.apache.maven.DefaultMaven.execute(DefaultMaven.java:138) at org.apache.maven.cli.MavenCli.main(MavenCli.java:362) at org.apache.maven.cli.compat.CompatibleMain.main(CompatibleMain.java:6 0) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl. java:39) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAcces sorImpl.java:25) at java.lang.reflect.Method.invoke(Method.java:597) at org.codehaus.classworlds.Launcher.launchEnhanced(Launcher.java:315) at org.codehaus.classworlds.Launcher.launch(Launcher.java:255) at org.codehaus.classworlds.Launcher.mainWithExitCode(Launcher.java:430) at org.codehaus.classworlds.Launcher.main(Launcher.java:375) Caused by: org.apache.maven.plugin.MojoFailureException: Unable to tag SCM Provider message: The svn tag command failed. Command output: svn: Repository UUID '3da89ab5-aa79-4544-a1de-ca02bd87a2ce' doesn't match expect ed UUID '221b71b0-5d3c-7840-b153-25850b4df36e' at org.apache.maven.plugins.release.PrepareReleaseMojo.execute(PrepareRe leaseMojo.java:169) at org.apache.maven.plugin.DefaultPluginManager.executeMojo(DefaultPlugi nManager.java:490) at org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoals(Defa ultLifecycleExecutor.java:694) ... 17 more
答案 0 :(得分:1)
我觉得自己像个numnut,但是当我转换我的svn存储库时,我忽略了更新pom.xml。这下全说通了。但我真的希望Maven列出它在输出中使用的存储库。它会让我节省一整天的头发!
答案 1 :(得分:0)
嘿,那么您对POM的改变是什么?我们的团队遇到了与maven-release-plugin相同的问题。我已经尝试了一个干净的结帐并验证了POM中用于scm配置的主机名和用于签出工作文件夹的主机名是相同的。您是否发现了修复POM所需的其他内容?
答案 2 :(得分:0)
有同样的问题。它得到了解决:
mvn release:help将显示版本号。
截至今天的最新消息: org.apache.maven.plugins 行家释放小插件 2.2.2