【问题标题】:Jenkinsfile and POM versionJenkinsfile 和 POM 版本
【发布时间】:2017-08-04 16:42:40
【问题描述】:

在我们获取 POM 模型后,如 Krzysztof Krasoń 在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 中的版本部分而不进行任何字符串操作?

【问题讨论】:

  • pom.version 应该返回 1.0-SNAPSHOT。你确定你用对了吗?提供完整的上下文,以便我们为您提供帮助。
  • @VitaliiVitrenko 我希望得到1.0.0-SNAPSHOT 而不是1.0-SNAPSHOT...
  • @khmarbaise 只是一个错字。它将返回您在&lt;version&gt; 标签中指定的内容。
  • @VitaliiVitrenko 感谢您的清理。这是我的假设..
  • @Vitalii Vitrenko 您还需要什么?由于公司政策,我无法披露所有内容。编辑:我已经放置了我们试图用来从 pom 文件中提取版本的函数的完整版本。

标签: maven jenkins jenkins-pipeline


【解决方案1】:

您不应在@NonCPS 方法中调用常规(CPS 转换)方法或管道步骤,因为它们需要 CPS 转换。
README.md 中查看更多信息。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2017-02-22
    • 2018-08-07
    • 1970-01-01
    • 2018-03-05
    • 2020-12-28
    • 2021-09-20
    • 2021-11-12
    相关资源
    最近更新 更多