我正在尝试使用maven pom.xml
使用以下代码阅读Jenkins号码。问题是,构建失败并出现错误,如下所述。我提到了詹金斯Building a software project给出的官方文件。如果我尝试使用任何文本而不是${BUILD_NUMBER}
,它将在控制台中打印而不是变量。
POM简介参考:
<profiles>
<profile>
<activation>
<activeByDefault>true</activeByDefault>
</activation>
<properties>
<build.number>${BUILD_NUMBER}</build.number>
</properties>
</profile>
</profiles>
POM系统属性:
<systemPropertyVariables>
<buildnumber>${build.number}</buildnumber>
</systemPropertyVariables>
如果我做错了,请告诉我。
答案 0 :(得分:5)
我对自己做的一件事就是之前调用一些maven命令,比如mvn versions:set
和mvn -N versions:update-child-modules
。我的pom文件版本为x.y.z,所以我让它们看起来像x.y.z. $ buildnumber。如果你愿意的话,你可以用$ buildnumber来替换它,但是不要忘记maven会更新并将它提交回SCM,将次要版本递增1.你必须在下一次构建时处理它。
请注意${BUILD_NUMBER}
是bash上可用的envvar(我可以在我的bash脚本上获取它),而不是maven变量。
正如此处所述:How to refer environment variable in POM.xml?,您可以${env.variable_name}
。