条件

描述

如果某个条件成立,则设置属性——这是对 可用最新 的泛化。

如果条件成立,则默认情况下将属性值设置为 true;否则,不会设置属性。您可以通过指定 value 属性将值设置为除默认值以外的值。

条件指定为 嵌套元素,您必须指定一个条件。

参数

属性 描述 必需
property 要设置的属性的名称。
value 要设置的属性的值。 否;默认为 true
else 如果条件评估为 false,则要设置的属性的值。自 Apache Ant 1.6.3 起 否;默认情况下属性将保持未设置状态

指定为嵌套元素的参数

所有要测试的条件都指定为嵌套元素,有关完整列表,请参阅 此处

示例

如果 JavaBeans Activation Framework 和 JavaMail 都在类路径中可用,则设置属性 javamail.complete

<condition property="javamail.complete">
  <and>
    <available classname="javax.activation.DataHandler"/>
    <available classname="javax.mail.Transport"/>
  </and>
</condition>

如果当前操作系统是 MacOS,但不是 MacOS X/macOS(Ant 认为它也属于 Unix 家族),则设置属性 isMacOsButNotMacOsX

<condition property="isMacOsButNotMacOsX">
  <and>
    <os family="mac"/>
    <not>
      <os family="unix"/>
    </not>
  </and>
</condition>

如果当前操作系统是 SunOS 并且在 SPARC 架构上运行,则设置属性 isSunOSonSparc

<condition property="isSunOSonSparc">
  <os name="SunOS" arch="sparc"/>
</condition>