根据Nant documentation,您可以使用target :: exists函数检查目标是否存在。
Execute target "clean", if it exists.
<if test="${target::exists('clean')}">
<call target="clean" />
</if>
我已经尝试将目标名称作为属性传递,但它似乎不起作用。
Nant不会抛出错误,但它也不会返回true,应该是什么时候。
基本上我要做的是:
<property name="cleanTarget" value="${someothervariables}"/>
<if test="${target::exists('${cleanTarget}')}">
<call target="${cleanTarget}" />
</if>
有可能吗?
答案 0 :(得分:3)
我解决了,我的语法错了。
正确的方法是:
<property name="cleanTarget" value="${someothervariables}"/>
<if test="${target::exists(cleanTarget)}">
<call target="${cleanTarget}" />
</if>
答案 1 :(得分:0)
您可以将其简化为:
<property name="cleanTarget" value="${someothervariables}"/>
<call target="${cleanTarget}" if="${target::exists(cleanTarget)}" />