2013-12-17 57 views
0

我正在尋找一種方法來告訴NAnt 而不是執行指定的目標。我沒有在網上找到任何東西,所以我沒有希望,但也許SO的好人可以提供幫助。是否可以從NAnt構建中排除目標?

這種情況是:我們的目標是A, B, C, D,以及一個調用所有其他目標的總體目標TA是獨立於其他人,所以並不是真的有必要;認爲這是一種昂貴的理智檢查。

我希望能夠運行T但排除A - 因此它只會運行B, C, D。 這是可能的,還是我必須申報一個專門運行這些工作的新目標?

回答

0

@如果要排除的目標NotAgain的回答是有用的是在開始或結束的鏈條,但它確實涉及建立一個新的目標,或至少編輯現有的目標。

迄今爲止找到的最佳解決方案是使用條件邏輯表達式。 例子:

<property name="runThis" value="true" /> 
<target name="runIfPropTrue" if="${runThis}"> 
    <exec program="test.bat" /> 
</target> 

這樣你可以設置你不妨排除通過編輯屬性,或者在將它作爲替代參數上和關閉它們的任何目標。 我假設你可以很容易地使用unless表達式,但我沒有測試過它。

0

我在想很簡單的方法。你的情況可能會有所不同。

我會讓T只取決於B,C和D.

時也需要一個我可以調用它的形式:

楠構建文件:Blah.build AT

+0

這將工作,但不會幫助,如果我想排除B或C.我找到了部分解決方案,很快發佈答案。 – Alex

相關問題