Jenkinsfile和POM版本

时间:2017-08-04 16:42:41

标签: maven jenkins jenkins-pipeline

在我们获取Pom模型之后,就像KrzysztofKrasoń在extract pom version in a jenkins pipeline中的回答中描述的那样。调用pom.version将返回工件的完全限定名称,而不仅仅是版本。

例如

@NonCPS
def version() {
    pom = readMavenPom file: 'pom.xml'
    pom.version
}

<groupId>com.test.app</groupId>
<artifactId>app</artifactId>
<version>1.0.0-SNAPSHOT</version>
<packaging>pom</packaging>

将产生

com.test.app:app:pom:1.0.0-SNAPSHOT

有没有办法只返回返回的 Model 中的版本部分而不进行任何字符串操作?

1 个答案:

答案 0 :(得分:1)

您不应该在@NonCPS方法中调用常规(CPS转换)方法或管道步骤,因为它们需要进行CPS转换。
请参阅README.md

中的详情