2013-04-01 45 views
0

我使用以下代碼來解析所有PHP包含並創建一個靜態html文件。當這樣做,我想刪除源php文件:如何確保在進一步執行之前完成apache-ant應用任務

<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完成後執行?

我知道我可以等待一秒鐘左右,但寧願不想依賴於此。

感謝 斯特凡

+0

在後臺運行或前臺運行php嗎? – Jayan

+0

我只是通過在終端中調用ant來運行build.xml文件,或者通過執行一個shell腳本來調用ant。在大約5%的情況下,只有源php文件的第一部分得到處理,這使我認爲它在處理時被刪除。正如你所說,默認情況下spawn是錯誤的。我對它進行了明確的測試,但目前無法證明這可以解決問題。 – Stefan

回答

0

如果屬性spawn設置爲false(默認爲false),那麼螞蟻應該等到它是完整的。 delete只有在php完成後纔會被調用。

Apply task manual

+0

謝謝恩。問題再也沒有發生過。我想還有其他事情正在發生,但沒有花更多時間。你回答匹配文檔。 – Stefan

相關問題