我正在将Jenkins版本1.577用于项目。在项目签出到工作区之后,但在构建之前,我想修改一些属性文件值(例如,JAVA_HOME
,TOMCAT_HOME
)。Jenkins - 在构建之前更改工作空间的已签出文件的属性文件
如何通过詹金斯做到这一点?
我正在将Jenkins版本1.577用于项目。在项目签出到工作区之后,但在构建之前,我想修改一些属性文件值(例如,JAVA_HOME
,TOMCAT_HOME
)。Jenkins - 在构建之前更改工作空间的已签出文件的属性文件
如何通过詹金斯做到这一点?
您可以在构建步骤本身中运行更改检出文件中的JAVA_HOME,TOMCAT_HOME等的脚本。只需在构建脚本被调用的行之前的同一个shell中提及它即可。
或者,您可以在调用构建脚本之前简单地在same shell
内设置JAVA_HOME,TOMCAT_HOME。请参阅下面的快照:
顺便说一句,如果你需要的是改变JAVA_HOME,TOMCAT_HOME等为构建,那么你可以简单地在全局配置页面进行配置(下图):
一旦全球配置完成后,就到你的工作的配置页面,然后从下拉列表中选择所需的版本。请参阅下面的截图:
这最后的办法还规定,您在不同的工作岗位使用不同版本的同一程序的(JAVA,例如)根据自己的需要灵活。不用说,它还可以在设置这些参数的同时配置各种作业的配置时减少出错的几率。
您还应该检查EnvInject Plugin。在链接中,搜索“单片机结帐后注入变量”
您可以简单地在作业配置的ant builder部分中指定属性(您需要点击高级按钮以查看属性框)。
ant中的属性是不可变的,所以在调用ant时设置它们会覆盖属性文件中的任何内容。
您想要避免构建步骤来更改源代码管理的文件。
+1引用“不可变”属性。你的答案肯定比较简单。我完全错过了Ant中可用的“属性”部分。 :( – Technext 2014-08-31 04:53:59
感谢您的建议。我使用ant build.xml文件来构建,我从jenkins调用它。我需要修改的值位于签出项目的属性文件中... – 2014-08-29 16:16:25
需要更改哪些属性? – Technext 2014-08-29 16:29:58
@ChandikaGunawardhana:查看我编辑的答案。如果除了需要在XML中更改的JAVA_HOME,TOMCAT_HOME等之外还有其他变量,则可以使用EnvInject插件。检查我更新的答案(最后一行)。 – Technext 2014-08-29 16:40:34