2015-04-05 66 views
1

说我有一个macrodef是这样的:可以为尚未定义的属性取消设置var吗?

<var name="someName" unset="true" /> 
<property name="someName" value="someValue" /> 

这似乎是工作,但它是一个定义的行为来取消一个变种在设置之前呢?我是新来的蚂蚁,并没有找到任何文件这个案件。

+2

“var”不是标准ANT的一部分。它由ant-contrib扩展提供,请参阅:http://ant-contrib.sourceforge.net/tasks/tasks/variable_task.html。这可能有助于解释与作为标准任务的“财产”的区别。 ANT中的属性是不可改变的,不能改变。 – 2015-04-05 19:43:00

回答

0

是的,如果没有设置,就可以取消设置一个变量(它不过是一个可变属性)。取消设置变量归结为从包含属性列表的哈希表中删除条目。从Hashtable#remove(Object key)的文档:

从此哈希表中删除键(及其相应的值)。如果密钥不在散列表中,此方法不执行任何操作。