我得到了一个Jenkins的工作,该工作构建了一个Java Maven项目。
现在,我尝试通过Jenkins(Perform Maven Release)进行发行,但是失败了。
[ERROR] Failed to execute goal org.apache.maven.plugins:maven-release-plugin:2.5:prepare (default-cli) on project MyProject: Unable to check for local modifications
[ERROR] Provider message:
[ERROR] The svn command failed.
[ERROR] Command output:
[ERROR] svn: E155036: Please see the 'svn upgrade' command
[ERROR] svn: E155036: The working copy at '/var/lib/hudson/workspace/JobName/MyProject'
[ERROR] is too old (format 8) to work with client version '1.9.5 (r1770682)' (expects format 31). You need to upgrade the working copy first.
[ERROR] -> [Help 1]
[ERROR]
[ERROR] To see the full stack trace of the errors, re-run Maven with the -e switch.
[ERROR] Re-run Maven using the -X switch to enable full debug logging.
[ERROR]
[ERROR] For more information about the errors and possible solutions, please read the following articles:
[ERROR] [Help 1] http://cwiki.apache.org/confluence/display/MAVEN/MojoFailureException
pom中的插件配置为:
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-release-plugin</artifactId>
<version>2.5</version>
<configuration>
<tagBase>http://svn.example.org/myproject/tags/_modules</tagBase>
</configuration>
</plugin>
我现在不确定,但是过去一直在工作。
我不明白的是Maven-release-plugin不使用本地svn客户端吗?
从错误消息来看,它似乎是这样(svn升级),如果是这样,为什么它在发行版中失败,但在签出时却失败了?
有没有办法解决这个问题而不改变詹金斯?
我尝试添加以下内容,因为据我了解,这应该强制插件使用该兼容的提供程序:
<dependencies>
<dependency>
<groupId>com.google.code.maven-scm-provider-svnjava</groupId>
<artifactId>maven-scm-provider-svnjava</artifactId>
<version>2.0.6</version>
<scope>compile</scope>
</dependency>
</dependencies>
但是我遇到以下错误:
[ERROR] Failed to execute goal org.apache.maven.plugins:maven-release-plugin:2.5:prepare (default-cli) on project MyApp: Unable to commit files
[ERROR] Provider message:
[ERROR] SVN commit failed.
[ERROR] Command output:
[ERROR] svn: E170001: Commit failed (details follow):
[ERROR] svn: E170001: MKACTIVITY of '/products/MyAppsAgregator/!svn/act/24d46a73-6601-0010-864c-7b76c8107c40': 403 Forbidden (http://svn.example.org)
[ERROR] -> [Help 1]
[ERROR]
[ERROR] To see the full stack trace of the errors, re-run Maven with the -e switch.
[ERROR] Re-run Maven using the -X switch to enable full debug logging.