如何从 Jenkins 声明式和脚本化管道内的 POM 中提取版本 ID?

2024-03-06

我已经创建了一个管道并使用嵌入式 groovy 管道脚本定义,但似乎无法从 POM 获取项目的版本 ID。我尝试了这个,它在 groovy 控制台中工作,但在 Jenkins 构建管道脚本中工作:

def project = new XmlSlurper().parse(new File("pom.xml"))
def pomv = project.version.toString()

根据文档,詹金斯有一个$POM_VERSION但是当我将它分配给变量并回显它时,该值中没有任何内容。

def pomv = "$POM_VERSION"

OR

def pomv = '$POM_VERSION"

Use readMavenPom https://jenkins.io/doc/pipeline/steps/pipeline-utility-steps/像这样:

pom = readMavenPom file: 'pom.xml'
pom.version

See Model http://maven.apache.org/components/ref/3.3.9/maven-model/apidocs/属性参考(如上面的版本)。

为此,必须安装管道实用步骤插件 https://wiki.jenkins-ci.org/display/JENKINS/Pipeline+Utility+Steps+Plugin

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何从 Jenkins 声明式和脚本化管道内的 POM 中提取版本 ID? 的相关文章

  • 遍历多行字符串

    我得到一些数据 def data some useless text n even more n finally interesting text 我怎样才能得到其中 有趣的部分 所以基本上所有行都不是以 开头的 Groovy 的一种选择是
  • 如何使用 jenkins shell 创建新的 git 分支

    我想达到以下目标 在某些詹金斯工作中 从 dev branch 创建一个新分支 对新创建的分支 new branch 进行一些更改 将新创建的分支推送到 git repo 我在詹金斯中执行了以下步骤 我已经在 源代码管理 部分配置了我的 g
  • Maven 3:为定义的工件生成 Javadoc

    我只想从专用文档项目中为我的项目的某些工件生成 javadoc 这意味着我想要一个名为 docs 的独立项目 在 docs pom xml 中 我想定义应包含在生成的 javadoc 中的工件 到目前为止 我了解到我必须为我想要包含的项目生
  • 如何从构建中排除 {test} 范围的依赖项?

    我有使用 Maven 构建的 Java 项目 它有一些依赖项 其中一个依赖项是另一个项目 我想到的是 Eclipse 工作区 并且它仅位于test scope
  • Maven无法编译java 1.8

    我正在尝试使用 maven 构建 jar 但我不断收到错误 ERROR Failed to execute goal org apache maven plugins maven compiler plugin 3 1 compile de
  • 如何解决 npm install 中的身份验证错误?

    在我的 package json 中 我有一个名为 somerepo git 的私人存储库 现在我通过 maven 在 buildserver bamboo 上运行 npm install 并收到此错误 ERROR npm ERR Comm
  • 如何在android studio中使用maven

    我想用底部栏 https github com roughike BottomBar我的项目中的库 当我添加正确的gradle命令在build gradle文件和sync 我收到此错误 Failed to resolve com rough
  • 如何在 Jenkins 管道中使用 Google 服务帐户进行身份验证

    我想用gcloud在 Jenkins 管道中 因此我必须首先使用 Google 服务帐户进行身份验证 我正在使用https wiki jenkins io display JENKINS Google OAuth Plugin https
  • Maven 在 POM 中使用加密密码

    如何在 maven 3 中使用 pom xml 中的加密密码 我有一些使用对我们来说非常敏感的密码的pom 例如我们有POM要部署在Weblogic等应用程序服务器中或在数据库中运行脚本 并且我们不喜欢只按原样输入密码 我已经拥有部署工件的
  • 将 spring boot 应用导入到另一个项目中

    因此 我尝试在另一个项目 测试框架 中添加一个 spring boot 可执行 jar 作为依赖项 但是一旦添加到 pom 并导入 Java 导入无法正常工作 如果我查看 jar 内部 所有包都带有以下前缀 BOOT INF classes
  • 如何删除 TFS 工作区映射?

    我在一个团队项目中的 tfs 中有一个项目 然后我们将该项目移动到另一个团队项目中的不同位置 我已将 Jenkins 配置为连接到团队项目并构建我的解决方案 但是当我更改设置以连接到新的 tfs 团队项目时 出现以下错误 workspace
  • 如何在 Groovy 中的 JSON Converter 方法中保留字母大小写?

    我正在尝试将 groovy 对象解析为 JSON 属性名称不遵循正确的驼峰式大小写形式 class Client String Name Date Birthdate 当我使用这个时 Client client new Client Nam
  • 访问先前 Jenkins 构建中失败的阶段

    我编写了一个 Jenkinsfile 脚本 它获取当前 Github 提交中的文档是否已更新或代码是否已更新 并相应地启动所有阶段 如果仅更新文档 我不会再次运行代码测试阶段 所以现在如果之前的构建失败并且现在在当前的 Git 提交中仅更新
  • 可以混合使用 JVM 语言吗?即:Groovy 和 Clojure

    我知道你可以轻松地混合groovy java clojure java 无论什么JvmLang java 这是否也意味着我也可以让 clojure 和 groovy 代码进行交互 如果我使用 Grails 或 jRoR 我也可以在该环境中使
  • buildnumber-maven-plugin 属性 ${buildNumber} 的可见性

    我正在尝试使用buildnumber maven plugin http www mojohaus org buildnumber maven plugin将 SCM 内部版本号附加到 WAR 工件名称 然后使用tomcat7 maven
  • Maven 多模块项目结构问题

    自从过去几周构建我的 Maven 多模块项目以来 这是我的一次有趣的经历 当我决定使用 Maven 进行构建生命周期管理时 我有几个原因希望选择 Maven A 大多数开发团队都是分开的 这样每个团队都可以在项目中的单独模块上工作 例如团队
  • SOAPUI:如何包含外部文件中的 Groovy 脚本

    How can I include groovy script from an external file 我试图使用 def script new GroovyScriptEngine d soapui payment v2 with l
  • AAR 可以包含传递依赖吗? [复制]

    这个问题在这里已经有答案了 现在我有一个库项目 比如项目 Foo 它依赖于像 OkHttp 这样的库 现在 Foo 有一个 Maven 构建步骤 可以生成 AAR 并将其推送到公共位置 现在假设我有项目 B 我们将其称为 Bar Bar是一
  • 使用 Maven 插件测试工具测试 Mojos 的默认值和表达式:

    我在使用 Maven 插件测试工具 2 0 alpha1 时遇到问题 当我想测试 Mojo 时 参数的默认值和表达式不适用 我有以下参数 p The output file to write the settings to p parame
  • Docker:PermissionError:[Errno 13]权限被拒绝[重复]

    这个问题在这里已经有答案了 我在运行 docker compose 时得到了这个 Got permission denied while trying to connect to the Docker daemon socket at un

随机推荐