2009-10-15 43 views
2

我正在使用Ruby和Rake爲.NET項目執行構建。構建結束時Rake(Ruby)捕獲錯誤

我打電話給一些命令行工具,比如NCover檢查覆蓋率是否足夠高。當NCover返回並退出(失敗)代碼時,Rake退出立即停止。

有沒有像我可以使用的on_exit這樣的鉤子。我基本上想輸出「Build FAILED」,寫成漂亮的紅色文字,如果可能的話,它會失敗,甚至更好地傳達一個原因。這樣對開發者來說就更清楚了。

NAnt中有類似的東西,它非常方便。想知道Rake/Ruby是否有類似的東西。

任何人有這種事情的經驗嗎?

乾杯。

回答

3

Ruby有at_exit。你可以這樣使用它:

at_exit do 
    puts "this gets printed before the script finishes" 
end 
+0

啊該死的,應該剛試過。我在黃瓜中使用它,不知道它是否是特定的。乾杯。 – Bealer 2009-10-15 16:12:31

+0

沒問題,樂於幫忙! – Geo 2009-10-15 18:20:49

1

也許你可以檢查該工具這樣返回的錯誤:

sh %{NCover file} do |ok, res| 
    if ! ok 
    raise "Build FAILED in NCover" 
    end 
end