如何在 Ant 的条件语句中有多个 if 情况

How to have multiple if cases in a condition statement in Ant

就像在switch语句中一样,我想在不同的情况下设置不同的值

我只能有一个条件,并且在这个条件语句中只能设置两个不同的值:

<condition property="prop" value="1" else="2">
   <equals arg1="${param1}" arg2="one"/>
</condition>

一旦设置,prop 是不可变的,所以我无法更改它的值。

我需要的是这样的东西

if (param1 == "one") {
   prop = 1;
} else if (param1 == "two") {
   prop = 2;
} else if (param1 == "three") {
   prop = 3;
} ...

您可以使用单独的条件并依赖属性不可变这一事实

<condition property="prop" value="1">
     <equals arg1="${param1}" arg2="one"/>
</condition>
<condition property="prop" value="2">
    <equals arg1="${param1}" arg2="two"/>
</condition>
...

并为最后的 else

添加一个常规 属性
<property name="prop" value="else">