Ant动态加载.properties文件

时间:2014-10-03 08:08:26

标签: java ant properties-file

默认情况下,使用<loadproperties srcFile="fileDir"/>时,属性会在ant脚本执行开始时加载。

我的问题是.properties文件在开头不存在,因为我从其他方向复制它(根据其他方面更改内容)。所以问题是:我能以某种方式动态地在ant脚本中间加载.properties文件吗?

1 个答案:

答案 0 :(得分:1)

loadproperties只是一个普通的Ant任务。它等同于多次调用property任务来设置属性。您可以在脚本的开头,某个目标的中间或其他任何地方调用它。

因此,如果在执行期间动态填充属性文件,并且在目标targetX中的某个时刻,您想要加载它,则只需照常调用该任务:

<target name="targetX" >    
    <loadproperties srcfile="${pathToFile}" />          
</target>

请注意,如果您之前已经加载了属性(在Ant脚本的最开头),那么第二次加载将不会覆盖在第一次调用loadproperties时设置的属性值(因为属性是不可变的)。如果要覆盖它们,可以使用Ant-Contrib的var任务。