Как проверить наличие свойства с помощью ant? Я открыт для использования ant -contrib, если ant не дает ничего полезного. Кроме того, ant -contrib имеет задачу assert, которая предоставляет "существует", но утверждение не то, что мне нужно здесь, так как я предпочел бы логическое возвращаемое значение. (ant новичок...)
Ant: Как проверить, существует ли свойство?
Ответ 1
Вы можете использовать задачу Condition с isset.
<project default="test">
<property name="a" value="a"/>
<target name="test">
<condition property="a.set" else="false">
<isset property="a"/>
</condition>
<condition property="b.set" else="false">
<isset property="b"/>
</condition>
<echo message="a set ? ${a.set}"/>
<echo message="b set ? ${b.set}"/>
</target>
</project>
Вывод:
test:
[echo] a set ? true
[echo] b set ? false
Ответ 2
Так как Ant 1.9.1 можно использовать атрибуты "if" и "except". Вы можете использовать эти новые атрибуты, если вы добавите 2 пространства имен xmlns: if = "ant: if" и xmlns: except = "ant: if" в проект.
<!DOCTYPE project>
<project xmlns:if="ant:if" xmlns:unless="ant:unless">
<property unless:set="property" name="property.is.set" value="false"/>
<property if:set="property" name="property.is.set" value="true"/>
<echo>${property.is.set}</echo>
</project>