ANT 从属性文件中读取属性,使用 ANT 属性
Posted
技术标签:
【中文标题】ANT 从属性文件中读取属性,使用 ANT 属性【英文标题】:ANT Reading property from property files, using an ANT property 【发布时间】:2016-09-08 15:35:48 【问题描述】:给你一个简单的问题..
我有一个像这样的值的属性文件
CommercialManager=MOT
CommercialUser=AT
CommercialAdmin=POT
我正在从 Jenkins 调用 Ant 脚本,传递一些变量.. 其中一些变量用于从属性文件中获取动态属性..
我的意思是,如果我从选择列表中选择 CommercialAdmin 变量进入 jenkins 作业,我想获得具有该名称的属性。
在 Jenkins JOB 中选择的值设置在变量 ROLE 中,该变量被传递给我的 ANT 脚本..
在我的代码下面:
<property file="Profiles.properties" prefix="profiles"/>
<echo>$profiles.CommercialManager</echo>
这样做一切正常,打印出来 交通运输部 但正如您所看到的,该值不是动态的,不是从詹金斯工作中获得的。..
所以我应该这样做:
<echo>$ROLE</echo>
但如果我这样做,打印会返回属性 ROLE 的值,即:
profiles.CommercialManager
而不是从属性文件中获取的值..
我该如何管理?我认为这很容易,但为时已晚,我陷入了混乱的海洋......
非常感谢!
【问题讨论】:
【参考方案1】:有多种方法可以从其他线程中描述的变量动态获取属性值:
In Ant, how can I dynamically build a property that references a property file? Dynamic property names in ant就个人而言,我会使用 javascript:
<property file="Profiles.properties" prefix="profiles"/>
<script language="javascript"><![CDATA[
project.setProperty("CommercialManager", project.getProperty("$Role"))
]]>
</script>
<echo>$CommercialManager</echo>
【讨论】:
以上是关于ANT 从属性文件中读取属性,使用 ANT 属性的主要内容,如果未能解决你的问题,请参考以下文章