我正在使用以下maven pom.xml片段从文件jenkins / version.properties中读取名为BUILD_NUMBER的属性。
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>properties-maven-plugin</artifactId>
<executions>
<execution>
<phase>initialize</phase>
<goals>
<goal>read-project-properties</goal>
</goals>
<configuration>
<files>
<file>${project.parent.basedir}/jenkins/version.properties</file>
</files>
</configuration>
</execution>
</executions>
</plugin>
Jenkins还有一个名为$ BUILD_NUMBER的环境变量。我有孩子pom.xmls尝试使用$ BUILD_NUMBER,并且它继续为$ BUILD_NUMBER获取Jenkins环境变量值,而不是jenkins / version.properties中的那个。我只是想知道maven是否将从文件中读取的值放入环境中?如果是这样的话,看起来詹金斯似乎过度写了这个值......
答案 0 :(得分:1)
是什么让你认为${project.parent.basedir}
评估任何有用的东西?
我说你的<file>
指向一个不存在的文件,因此properties-maven-plugin
没有读取任何属性,因此BUILD_NUMBER
未定义为属性,${BUILD_NUMBER}
1}}回退到${env.BUILD_NUMBER}
,这是你的Jenkins环境变量。
答案 1 :(得分:1)
我将BUILD_NUMBER变量更改为其他名称,以便它不会与Jenkins $ BUILD_NUMBER环境变量冲突。这似乎解决了这个问题。感谢您的帮助 - 让我走上正轨。