Jenkins - 如何将值从pom.xml传递到下游作业(自由样式)

时间:2013-07-31 21:29:35

标签: maven jenkins

我已经设置了2个免费样式的作业,build-app和deploy-app。 build-app轮询scm并构建基于Maven的应用程序,并将工件安装在Web服务器(内部存储库服务器)中,然后调用deploy-app。我想将pom文件()的版本传递给下游作业,以便下载正确的工件并将其安装在计算机上。我发现一些答案建议将版本字符串放在属性文件中并使用InjectEnv插件,但我更喜欢从pom本身读取它。有什么想法吗?

谢谢!

1 个答案:

答案 0 :(得分:1)

在Maven内部构建时,您可以访问pom文件版本${program.version}并可以使用它做任何事情。

下游自由式作业也可以使用相同的pom但不同的目标运行Maven。如果你注意保持它在过渡期间不变,那么版本应该是相同的。 (这表明应该始终遵循一个程序。)

因此,例如,Maven目标可以运行Groovy脚本或Ant脚本,该脚本将从repo中获取正确的文件并进行部署。