Ant isset行为

时间:2014-01-02 09:54:20

标签: ant

根据文档isset子句"测试是否已在此项目中设置了给定属性"。我不明白当设置属性时,wheter isset返回true或false 在下面的代码片段中,当未设置env.JAVA_HOME时,java.pass.home设置为somval。

<condition property="java.passed.home" value="somval">
    <isset property="${env.JAVA_HOME}"/>
</condition>

此代码段符合我的要求,但我认为正确的代码段应该是这样的,因为我想在另一个属性不可用时设置属性

<condition property="java.passed.home" value="somval">
    <not>
        <isset property="${env.JAVA_HOME}"/>
        </not>
    </condition>

有人可以澄清一下吗? 提前致谢

1 个答案:

答案 0 :(得分:8)

代码段是正确的,但应该使用名称来提及属性,而不使用{}

将其括起来
<isset property="${env.JAVA_HOME}"/>

应该是

<isset property="env.JAVA_HOME"/>