Используя Ant, можно ли использовать условие AND, ИЛИ в теге IF?
contrib Можно проверить еще условие в tag IF?
Мне нужно сделать что-то вроде этого:
<if>
<equals arg1="${var}" arg2="one"/>
<or>
<equals arg1="${var}" arg2="two"/>
</or>
<or>
<equals arg1="${var}" arg2="three"/>
</or>
<or>
<equals arg1="${var}" arg2="four"/>
</or>
<then>
<echo message="basic dir: ${var}"/>
<copy todir="../direct" verbose="yes" failonerror="no" overwrite="yes">
<fileset dir="${var}">
<include name="**"/>
</fileset>
</copy>
</then></if>
Как сделать много условий в одном IF?
ОБНОВЛЕНИЕ: решить:
<if>
<or>
<equals arg1="${var}" arg2="one"/>
<equals arg1="${var}" arg2="two"/>
<equals arg1="${var}" arg2="three"/>
<equals arg1="${var}" arg2="four"/>
</or>
<then>
<echo message="basic dir: ${var}"/>
<copy todir="../direct" verbose="yes" failonerror="no" overwrite="yes">
<fileset dir="${var}">
<include name="**"/>
</fileset>
</copy>
</then></if>
Ответы
Ответ 1
<If>
основан на <condition>
и поддерживает (что мое понимание) те же вложенные элементы (условия).
Попробуйте:
<if>
<or>
<equals arg1="${var}" arg2="one"/>
<equals arg1="${var}" arg2="two"/>
<equals arg1="${var}" arg2="three"/>
<equals arg1="${var}" arg2="four"/>
</or>
<then>
<echo message="basic dir: ${var}"/>
<copy todir="../direct" verbose="yes" failonerror="no" overwrite="yes">
<fileset dir="${var}">
<include name="**"/>
</fileset>
</copy>
</then>
</if>