我想根据条件运行特定的<arg>
标签。而且我的ANT版本是1.8.2,所以我不能使用if和not。
我的<arg>
中有几个<exec>
,如果满足某些条件(例如我的$ {host.NAME),我只希望某些<arg>
运行}等于指定的服务器。
例如
<condition property="validHost" value="${dynamicValue}"> (except not dynamic, the first value is repeated for all instances)
<or>
<equals arg1="${host.NAME}" arg2="example" />
<equals arg1="${host.NAME}" arg2="example" />
</or>
</condition>
<exec...>
<arg line="always runs"/> (Always runs)
<arg line="${validHost}"/> (Only runs if validHost condition true)
</exec>
问题是,当我在<condition value="${dynamicValue}">
标记内放置一个动态值时,它将每次迭代设置为第一个值,而不是动态更改它。例如,这些值:
value1 =你好 value2 =世界
将导致
arg1 =你好 arg2 =你好
当我回显动态值时,它会发生变化,因此我假设<condition>
标签不是动态调用的,而是不可变的。除了更新,还有什么办法可以解决此问题?