gpt4 book ai didi

java - 从命令行获取 pom.xml 属性

转载 作者:塔克拉玛干 更新时间:2023-11-03 04:01:29 25 4
gpt4 key购买 nike

我目前正在为我们的 Gitlab CI 编写脚本,自动将文件上传到网络中的 NFSShare 文件夹。因为我想组织构建并且我们使用的是 Maven,所以我想我可以“轻松地”从 pom.xml 中获取项目名称。

有没有办法通过命令行工具或其他工具从 pom.xml 中获取可用的属性?我唯一能想到的其他方法是“手动正则表达式 grepping 值”——在我看来这不是一个非常干净的解决方案。

我已经找到了属性插件,但它似乎只能通过实际的 .properties 文件添加新属性...

如有任何帮助,我们将不胜感激!

最佳答案

我知道这个问题很老,但我花了一些时间来寻找这个问题。

要过滤输出,您可以使用标志“-q -DforceStdout”,其中“-q”阻止输出,“-DforceStdout”强制输出插件的结果。例如:

BUILD_VERSION=$(mvn help:evaluate -Dexpression=project.version -q -DforceStdout)
echo $BUILD_VERSION

将从 POM 生成项目的打印版本。

我遇到的第二个重要问题是访问“属性”,这在 Nick Holt 评论中有解释。要访问属性,您只需直接访问它们

<project ...>
<version>123</version>
(...)
<properties>
(...)
<docker.registry>docker.registry.com</docker.registry>
(...)
</properties>
(...)
</project>

错误

mvn help:evaluate -Dexpression=project.properties.docker.registry -q -DforceStdout

好的

mvn help:evaluate -Dexpression=docker.registry -q -DforceStdout

关于java - 从命令行获取 pom.xml 属性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23802951/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com