【发布时间】:2013-11-19 06:44:26
【问题描述】:
使用简单的 ant 属性很棘手,并且不允许轻松设置所需的值(属性是不可变的)。使用 ant-conrib 的 var 任务可以设置和取消设置属性。
将 ant 属性设计为以如此复杂的方式工作的背后有什么真正的或充分的理由吗?
<property name="some.ant.prop" value=""/>
<if>
<isset property="some.ant.prop"/>
<then>
<echo message="immutable ant prop - not good, defined and just even set to null string : ${some.ant.prop}"/>
<property name="some.ant.prop" value="no-effect-value"/>
<echo message="no-effect on changing already defined prop : ${some.ant.prop}"/>
<var name="some.ant.prop" unset="true"/>
<property name="some.ant.prop" value="any-value-accepted"/>
<echo message="Overwritten prop value: ${some.ant.prop}"/>
</then>
</if>
不是为了讨论或争论,但很高兴知道更可行的替代方案。谢谢。
【问题讨论】:
标签: ant properties ant-contrib