我在mvn发布期间收到此错误:准备目标:
[ERROR] Failed to execute goal org.apache.maven.plugins:maven-release-plugin:2.4.2:prepare (default-cli) on project env-status-checks: Unable to tag SCM [ERROR] Provider message: [ERROR] The svn tag command failed. [ERROR] Command output: [ERROR] svn: E200007: Source and destination URLs appear not to point to the same repository.
这是失败的SVN命令
[INFO] Tagging release with the label env-status-checks-0.0.1... [INFO] Executing: cmd.exe /X /C "svn --username akanchev --password ***** --no-auth-cache --non-interactive copy --file C:\Windows\TEMP\maven-scm-1102804858.commit --revision 9260 svn://svn.XXXX.local/qa/XX-tf/trunk/env-status-checks http://svn.XXXX.local/qa/XX-tf/tags/env-status-checks-0.0.1" [INFO] Working directory: C:\Users\Administrator\.jenkins\jobs\Test release\workspace [INFO] ------------------------------------------------------------------------ [INFO] BUILD FAILURE [INFO] ------------------------------------------------------------------------
maven发布插件的pom.xml配置是:
org.apache.maven.plugins maven-release-plugin 2.4.2 http://svn.XXXX.local/qa/XX-tf/tags
这就是SVN scm:
scm:svn:svn://svn.XXX.local/qa/wh-tf/trunk/env-status-checks scm:svn:svn://svn.XXX.local/qa/XX-tf/trunk/env-status-checks scm:svn:svn://svn.XXX.local/qa/XX-tf/
最终解决方案(感谢Ben):
我实际上被发布插件的maven指南所迷惑.在那里的例子
https://svn.mycompany.com/repos/myapplication/releases
对我有用的是:
TAG基地
svn://svn.XXXX.local/qa/XX-tf/tags/
SCM连接
scm:svn:svn://svn.XXXX.local/qa/XX-tf/trunk/env-status-checks
Ben Reser.. 8
你的svn copy命令混合了两种不同的协议.源是svn://,目的地是http://.在执行服务器端复制时,您需要使用相同的协议,因为目标和源必须通过相同的连接可访问.
通过http://切换到通过svn://或两者同时使用可以解决您的问题.
你的svn copy命令混合了两种不同的协议.源是svn://,目的地是http://.在执行服务器端复制时,您需要使用相同的协议,因为目标和源必须通过相同的连接可访问.
通过http://切换到通过svn://或两者同时使用可以解决您的问题.