如何在jenkins管道作业中获得pom版本
我想在我的一个阶段中获得pom版本。为此,我有一个管道脚本。我已安装管道实用程序步骤插件如何在jenkins管道作业中获得pom版本,jenkins,groovy,pom.xml,jenkins-pipeline,Jenkins,Groovy,Pom.xml,Jenkins Pipeline,我想在我的一个阶段中获得pom版本。为此,我有一个管道脚本。我已安装管道实用程序步骤插件 stage ('Publish Stage') { steps { pom = readMavenPom file: 'pom.xml' echo pom.version } } 我犯了一个错误,有人能告诉我我犯了什么错误吗?您不能在这样的声明性管道中为groovy变量赋值。
stage ('Publish Stage') {
steps {
pom = readMavenPom file: 'pom.xml'
echo pom.version
}
}
我犯了一个错误,有人能告诉我我犯了什么错误吗?您不能在这样的声明性管道中为groovy变量赋值。只能运行
步骤{}
块中的步骤。如果将其包装在脚本{}
块中,它将工作。如果需要在其他地方使用该变量,请注意不要在本地声明该变量 您不能在这样的声明性管道中分配给groovy变量。只能运行步骤{}
块中的步骤。如果将其包装在脚本{}
块中,它将工作。如果需要在其他地方使用该变量,请注意不要在本地声明该变量 编写步骤{}块并将其包装到脚本{}中会起作用,但在我的例子中,我只是通过环境使用变量
stage('Read Pom Version'){
pom = readMavenPom file: 'pom.xml'
env.POM_VERSION = pom.version
sh '''#!/bin/bash -xe
echo $POM_VERSION
'''.stripIndent()
}
假设我的pom中的版本是1.0.0。以上詹金斯舞台印花如下:
1.0.0
echo 1.0.0
编写步骤{}块并将其包装在脚本{}中会起作用,但在我的例子中,我只是在整个环境中使用变量
stage('Read Pom Version'){
pom = readMavenPom file: 'pom.xml'
env.POM_VERSION = pom.version
sh '''#!/bin/bash -xe
echo $POM_VERSION
'''.stripIndent()
}
假设我的pom中的版本是1.0.0。以上詹金斯舞台印花如下:
1.0.0
echo 1.0.0
错误是?rg.codehaus.groovy.control.MultipleCompilationErrorsException:启动失败:WorkflowScript:24:第24行第17列应为步骤。pom=readMavenPom文件:“pom.xml”请将此信息添加到原始帖子中。如果你真的需要帮助,请通读指导原则。使用env var POM_版本。错误是?rg.codehaus.groovy.control.MultipleCompilationErrorsException:启动失败:WorkflowScript:24:第24行第17列应为步骤。pom=readMavenPom文件:“pom.xml”请将此信息添加到原始帖子中。如果你真的需要帮助,请通读指导原则。使用env var POM_版本。但这是脚本化管道的代码,不是声明性的。投票,因为获得pom版本的代码片段对我有效。但这是脚本化管道的代码,不是声明性的。投票,因为获得pom版本的代码片段对我有效。