2011-04-05 47 views

回答

10

批處理是編程語言(並不是一個很好的)。 Ant是相關矩陣語言。有什麼不同?

  • 編程語言,指定中的順序進行的一切。你負責任地說什麼是建立和順序。

  • 相關性矩陣語言,你只是陳述的依賴,程序計算出該怎麼做和秩序,應該在做,其中一個最大的問題,開發商有螞蟻或製作是嘗試強制構建訂單而不是讓構建系統處理它。

構建應始終像螞蟻相關性矩陣的語言來完成。

讓Ant確定需要構建的內容和它應該構建的順序。不要使用批處理。如果您使用批處理腳本按照您認爲應該調用的順序調用一堆Ant腳本,那麼您就錯了。有一個主Ant腳本執行它並使用<subant>調用。讓Ant做棘手的事情。

您可以使用批處理腳本做前期工作(如設置ANT_OPTS如果螞蟻需要更多的內存,或設置類似ANT_HOME和JAVA_HOME和您%PATH%變量的環境變量,以確保你使用了正確的Java和Ant在Hudson中,你可以在Hudson作業中設置所有這些,所以你不必調用批處理腳本。

+0

感謝您的出色答案,我認爲我會嘗試隨着時間的推移切換到螞蟻... – 2011-04-06 07:23:16

4

* .bat文件相當多限制你DOS/Windows的,怎麼樣shell腳本是用於Linux,而螞蟻/ Maven是跨平臺的,讓您使用非Windows CI服務器的選項

+0

另外:當你的版本是跨平臺的時候,你打開了測試的大門一個額外的Jenkins-Linux從站以及測試跨平臺可移植性 – Tim 2011-04-05 09:39:55

+0

您是對的 - 在我的情況下,這不是一個大問題,因爲我們只在Windows平臺上開發和部署。 – 2011-04-05 11:10:25