2013-01-08 40 views
0

我的ant文件已經存在,我不允許出於各種原因更改這些文件。
我已經創建了一個批處理文件,並且我正在將所有這些ant命令寫入該批處理文件中,以便自動執行該過程。
的代碼看起來是這樣的如何獲取ant命令的錯誤代碼

1. cd abc 
2. ant realclean && ant 
3. cd.. 
4. cd pqr 
5. ant realclean && ant 
6. cd.. 

但是現在我要檢查,如果第2行打響了構建成功,則只有轉到3號線,否則退出。

我用Google搜索了一下,發現%errorlevel%作爲一個選項,但它不是在我的情況下工作。

有什麼建議嗎?

在此先感謝。

+0

'%ERRORLEVEL%'應該是你所需要的。當您爲編譯失敗編寫'cd abc && ant realclean && ant&echo%errorlevel%'時會發生什麼?注意'echo'前面的單個'&' – Slav

回答

1

如何將它包含執行現有的ANT文件的任務另一個ANT文件嗎?

這將使你錯誤處理沒有做任何事情,你可以重複使用在不同的操作系統該文件和你的CI server和語法將比批次理智的......

你可以有ANT執行,說project.xml,與ant -f project.xml

[編輯]你甚至不必改變現有的項目:只要創建一個新的項目,在新build.xml分配路徑,以老項目屬性,然後你可以建立從舊項目新的一個。

這給了你:

  • 一個理智[*]語法,您已經知道(無需學習醜/車/ DOS批處理編程的殘疾人規則;你也知道,DOS曾經被命名爲QDOS "Quick and Dirty OS" ,是嗎?)
  • 正確的錯誤處理
  • 一個簡單的方法將參數傳遞給子構建
  • 跨平臺支持
  • 有用的錯誤信息時出現錯誤

[*]:相比於DOS ...

+0

這是一個絕妙的想法。至於安靜 - 你可以在一次對螞蟻的呼叫中調用多個螞蟻目標。例如,如果默認目標abc/build.xml是包,則可以運行ant realclean包。不過,我會選擇Aaron Digulla的方法。 – thekbb

相關問題