也就是说,当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/

10-11 04:53