【问题标题】:Using Ant, is it possible to use AND, OR condition in tag IF?使用 Ant,是否可以在标记 IF 中使用 AND、OR 条件?
【发布时间】:2011-05-19 16:47:38
【问题描述】:

contrib 可以在标签 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>

【问题讨论】:

  • 可以删除我的问题吗?
  • Krzysio - 你不应该删除它,其他用户可能有类似的问题,并且可能会发现你的问题和答案很有用。我会从问题中删除解决方案并将其添加为“自己的答案”。这是SO的首选方式。这个问题很好,可以留下来!

标签: java ant task ant-contrib


【解决方案1】:

&lt;If&gt; 基于&lt;condition&gt; 并支持(这是我的理解)相同的nested elements (conditions)

试试这个:

<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>

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2012-01-26
    • 2016-04-24
    • 1970-01-01
    • 1970-01-01
    • 2019-12-17
    • 2014-06-09
    • 2014-12-12
    相关资源
    最近更新 更多