简单的问题..
我有一个像这样的
的属性文件 CommercialManager=MOT
CommercialUser=AT
CommercialAdmin=POT
我从Jenkins调用Ant脚本,传递一些变量.. 其中一些变量用于从属性文件中获取动态属性..
我说如果我从选择列表中选择了具有该名称的属性的jenkins作业中的CommercialAdmin变量。
在Jenkins JOB中选择的值设置在变量ROLE中,并传递给我的ANT脚本。
在我的代码下面:
<property file="Profiles.properties" prefix="profiles"/>
<echo>${profiles.CommercialManager}</echo>
这样做一切正常,打印出来 MOT 但正如你所看到的那样,价值不是动态的,不是从詹金斯的工作中获取的......
所以我应该这样做:
<echo>${ROLE}</echo>
但是,如果我这样做,print会返回属性ROLE的值:
profiles.CommercialManager
而不是从属性文件中获取的值..
我该如何管理?我觉得它很容易,但是,它已经很晚了,我游到了一片混乱的海洋中。
非常感谢!
答案 0 :(得分:1)
有很多方法可以从其他线程中描述的变量中动态获取属性值:
就个人而言,我会使用javascript:
<property file="Profiles.properties" prefix="profiles"/>
<script language="javascript"><![CDATA[
project.setProperty("CommercialManager", project.getProperty("${Role}"))
]]>
</script>
<echo>${CommercialManager}</echo>