根据条件运行arg

时间:2019-05-30 07:52:48

标签: java xml ant

我想根据条件运行特定的<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>标签不是动态调用的,而是不可变的。除了更新,还有什么办法可以解决此问题?

0 个答案:

没有答案