如何确保ApacheAnt应用任务在进一步执行之前完成

如何确保ApacheAnt应用任务在进一步执行之前完成,apache,ant,Apache,Ant,我使用以下代码解析所有PHP包含并创建一个静态html文件。完成后,我想删除源php文件: <apply executable="php" parallel="false" dir="${prod.dir}" output="${prod.dir}/index.html"> <fileset dir="${prod.dir}" includes="index.php"/> </apply> <delete file="${prod.dir}/inde

我使用以下代码解析所有PHP包含并创建一个静态html文件。完成后,我想删除源php文件:

<apply executable="php" parallel="false" dir="${prod.dir}" output="${prod.dir}/index.html">
  <fileset dir="${prod.dir}" includes="index.php"/>
</apply>
<delete file="${prod.dir}/index.php"/>

显然,index.php会在php运行时被删除。如何确保删除任务仅在php完成后执行

我知道我可以等一秒钟左右,但我不想依赖这个

谢谢
Stefan

如果属性
spawn
设置为
false
(默认值为
false
),那么ant应该等待它完成。只有在php完成后才会调用
delete


php是在后台运行还是在前台运行?我运行build.xml文件的方法是在终端中调用ant,或者执行一个shell脚本,该脚本反过来只调用ant。在大约5%的情况下,只有源php文件的第一部分得到处理,这使我认为它在处理时被删除了。正如您所说,默认情况下,spawn为false。我用显式设置进行了测试,但到目前为止无法证明这可以解决问题。谢谢yan。这个问题再也没有发生过。我想是发生了别的事情,但没有花更多的时间。你的答案与文件相符。