Ant中的condition属性

时间:2014-08-14 09:41:03

标签: ant

这是手册中所说的" condition":

  

如果某个条件成立,则设置属性。如果条件   如果成立,则默认情况下属性值设置为true;除此以外,   该物业未设定。您可以将值设置为除以外的值   通过指定值属性

的默认值

我尝试了什么:

<echo message="${a}" />
<condition property="a">
    <isfalse value="test" />
</condition>
<echo message="${a}" />

我的推理:

如果属性&#34; a&#34;那么是假的    设置&#34; a&#34;的值到&#34;测试&#34;

回应的结果是:

[echo] ${a}
[echo] true

该属性设置为&#34; true&#34;因为它是假的,但是&#34;价值&#34;的目的是什么?然后?

谢谢

克里斯

1 个答案:

答案 0 :(得分:4)

Ant属性是不可变的 - 一旦设置它们就无法更改。因此,您无法修改&#34; a&#34;但你可以有条件地设置一个不同的属性。对于您的问题陈述的以下轻微修改:

  

如果属性&#34; a&#34;如果为false,则将 b 的值设置为&#34; test&#34;

你可以使用

<condition property="b" value="test">
  <isfalse value="${a}"/>
</condition>

condition标记的属性属性是您正在设置的属性,其值属性是在条件成功时将其设置为的值。您测试的值是isfalse上的值属性。