Rake軟件構(gòu)建工具
Make 是一個(gè) UNIX? 的本機(jī)實(shí)用程序,是為管理軟件編譯過(guò)程而設(shè)計(jì)的。它十分通用,足以用于許多其他環(huán)境中,即使它已用于將文檔編譯成書,維護(hù) Web 站點(diǎn)以及裁減發(fā)行版。但是,make 也有自身的約束。它具有自己的語(yǔ)法,這取決于制表符的(tabbed)和非制表符的(nontabbed)空白空間。許多其他工具已經(jīng)進(jìn)行了擴(kuò)展,可以彌 補(bǔ) make 的一些不足,如 Aegis 和 Ant,但這兩者也都具有自己的問(wèn)題。
Make 以及類似的工具都有改進(jìn)的余地,但是它們都不可能讓 Ruby 黑客十分開(kāi)心。您從這里要去哪里?幸好,可以使用一些 Ruby 選項(xiàng)。Rant 是一個(gè)由 Stefan Lang 編寫的工具(請(qǐng)參閱 參考資料)。Rant 仍處于開(kāi)發(fā)周期的初級(jí)階段,因此它可能還沒(méi)有成熟到足以適用于每個(gè)人。Jim Weirich 編寫的 Rake 是一個(gè)在 Ruby 社區(qū)中廣泛使用的成熟系統(tǒng)。
Rake 是用 Ruby 編寫的,并使用 Ruby 作為它的語(yǔ)法,因此學(xué)習(xí)曲線很短。Rake 使用 Ruby 的元編程功能來(lái)擴(kuò)展語(yǔ)言,使之更利落地適應(yīng)自動(dòng)化任務(wù)。Rake 附帶的 rdoc 中列出了一些優(yōu)點(diǎn)(請(qǐng)注意,前兩個(gè)是諸如 make 的其他任務(wù)自動(dòng)化工具所共有的):
- 用戶可以用先決條件指定任務(wù)。
- Rake 支持規(guī)則模式來(lái)合并隱式任務(wù)。
- Rake 是輕量級(jí)的。它可以用其他項(xiàng)目發(fā)布為單個(gè)文件。依靠 Rake 的項(xiàng)目不需要在目標(biāo)系統(tǒng)上安裝 Rake。
評(píng)論
圖片
表情
