【发布时间】:2011-03-15 13:15:05
【问题描述】:
我有一个关于 Ant 及其对环境变量的处理的问题。 为了说明,我有一个小样本。
给定 Ant 构建文件 test.xml:
<project name="myproj" default="testProps">
<property environment="env"/>
<target name="testProps">
<echo message="${env.MyEnvVar}"/>
<echo message="${MY_PROPERTY}"/>
</target>
</project>
还有属性文件test.props:
MY_PROPERTY=${env.MyEnvVar}
现在将环境变量 MyEnvVar 设置为某个值(在我的例子中为 foo)并使用以下命令行运行 Ant:
ant -f test.xml -propertyfile test.props testProps
我得到的输出是:
[echo] foo
[echo] ${env.MyEnvVar}
我想知道是否有任何方法可以构造输入属性文件,以便我得到
[echo] foo
[echo] foo
也就是说,我想在属性文件中命名一个环境变量,它会在 Ant 脚本中被替换。注意 - 我知道如何直接访问环境变量(就像这里所做的那样)。我需要做的是使用一组 Ant 脚本,这些脚本期望在使用不同名称定义相同属性的环境中拥有一个属性集合。因此想到在属性文件中“桥接”它们。
我使用的是 Ant 1.6.5 版。
【问题讨论】:
标签: ant