一、概述
propertyhelper是Ant1.8引入的任务,用于在运行时安装不同的PropertyHelper,或者将一个或多个PropertyHelper委托安装到当前项目中处于活跃状态的PropertyHelper中。这是一种Ant的高级用法,需要对Ant API有一定的了解。
二、属性
支持以下嵌套元素:
PropertyHelper:您可以仅指定一个已配置的org.apache.tools.ant.PropertyHelper实例。
PropertyHelper.Delegate:可以与新的PropertyHelper一起指定,或者单独指定一个或多个已配置的org.apache.tools.ant.PropertyHelper.Delegate接口的实现。Delegate只是一个标记接口,嵌套的参数必须实现Delegate的子接口才能进行有意义的操作。
delegate:可以使用project引用的通过delegate元素。有一个refid属性,指向要安装的PropertyHelper.Delegate。
三、简单示例
<project>
<componentdef classname="org.example.MyPropertyHelper" name="mypropertyhelper"/>
<propertyhelper>
<mypropertyhelper/>
</propertyhelper>
<componentdef classname="org.example.MyPropertyEvaluator" name="mypropertyevaluator"/>
<propertyhelper>
<mypropertyevaluator/>
</propertyhelper>
<typedef classname="org.example.MyPropertyEvaluator" name="mypropertyevaluator"/>
<mypropertyevaluator id="evaluator"/>
<propertyhelper>
<mypropertyhelper>
<delegate refid="evaluator"/>
</mypropertyhelper>
</propertyhelper>
</project>