也就是说,当testSetupDone评估为false时,将调用以下目标,并在依赖关系链中执行目标吗?
<target name="-runTestsIfTestSetupDone" if="testSetupDone" depends="-runTests" />
最佳答案
是的,将在评估条件之前执行依赖项。
从Ant manual:
您也可以尝试一下:
<project>
<target name="-runTests">
<property name="testSetupDone" value="foo"/>
</target>
<target name="runTestsIfTestSetupDone" if="testSetupDone" depends="-runTests">
<echo>Test</echo>
</target>
</project>
我在依赖目标中设置属性
testSetupDone
,输出为:Buildfile: build.xml
-runTests:
runTestsIfTestSetupDone:
[echo] Test
BUILD SUCCESSFUL
Total time: 0 seconds
即使此时未设置
-runTests
,也会执行目标testSetupDone
,然后再执行runTestsIfTestSetupDone
,因此在 depend
之前(使用Ant 1.7.0)将评估为。关于ant - 按什么顺序评估Ant目标的 “if”和 “depends”?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/4014094/