我正在使用 Jenkins 1.596、工作流 1.3 和 Svn 插件 2.5。我正在尝试在我的工作流脚本中获取 svn 修订号。
我的工作流脚本部分是:
node {
checkout scm: [ $class: "SubversionSCM", locations: [[ remote:'https://secure3.svnrepository.com/somerepo/trunk', credentialsId: cid]] ]
stage 'build'
dir('trunk') {
def revision = 'svn info'.execute().in.text.split('\n').find { it.startsWith('Revision') }.split(':')[1].trim()
println revision
def svnHome = tool 'Svn'
sh "$svnHome/bin/svn info"
def mvnHome = tool 'Maven'
sh "export JAVA_HOME=/var/jenkins_home/java; $mvnHome/bin/mvn --version"
sh "export JAVA_HOME=/var/jenkins_home/java; $mvnHome/bin/mvn clean deploy"
}
在这里你看到了两次尝试:第一次打印“java.io.IOException: Cannot run program "svn": error=2, No such file or directory”,第二次打印“No tool named Svn found”(我也试过“颠覆”)。尝试def revision = System.getenv('SVN_REVISION')
打印“null”。
知道我该怎么做吗?