2010-03-01 105 views
5

如何在我的nant腳本中需要向msbuild任務表明它應該使用.net 4.0 rc?Nant msbuild任務,使用.net 4.0 rc

+0

爲什麼在你的腳本中有一個msbuild任務?你使用的是msbuild,你爲什麼要這麼做? – 2010-03-01 02:33:38

+1

您可以使用NAnt來處理整個項目自動化任務(例如運行測試,運行分析,版本控制,打包等)並委派給MSBuild進行編譯。 – 2010-03-01 19:08:46

+0

Grant是正確的,Nant正在構建,運行測試,運行ncover,然後處理一些數據庫腳本。 – 2010-03-01 21:55:21

回答

4

我認爲最新的NAnt/NAntContrib默認爲.NET 3.5,因此您必須將其更改爲4.0。有一個NAnt屬性來處理(<property name="nant.settings.currentframework" value="net-4.0" />),它應該靠近NAnt構建文件的頂部。

接下來,您需要進入NAnt的配置文件並添加4.0節點,以便NAnt(以及擴展NantContrib)知道新的CLR版本。

+0

這似乎解決了它。只是想附加一個鏈接到一個博客,我發現了實際的nant配置部分。只需要將版本號更新到發佈候選版本並將一行添加到啓動部分。 http://paigecsharp.blogspot.com/2009/08/nant-net-framework-40-configuration.html – 2010-03-02 00:50:28

+0

這實際上就是我在VS 2010/.NET上試用自動化版本時必須要做的事。對不起,我不能在這裏粘貼解決方案,但我沒有代碼方便。很高興我能夠幫助你解決這個問題。 – 2010-03-02 19:49:50

1

第一個選項是更改MSBuild任務使用的可執行文件。根據doco這是一個框架屬性,所以您需要在主要的nant配置文件中對其進行更改,而不是將其作爲單獨的腳本,並且您必須在計劃構建腳本的每臺計算機上執行此操作。

另一種選擇是使用exec任務。 This問題和答案應該對此有所幫助。

編輯:忘了提及MSBuild目錄。要更改版本,只需使用不同的MSBuild。

2.0中:%windir%\ Microsoft.NET \框架\ V2.0.50727 \ MSBuild.exe
3.5中:%windir%\ Microsoft.NET \框架\ v3.5版本\ MSBuild.exe
4.0b2:% windir%\ Microsoft.NET \ Framework \ v4.0.21006 \ MSBuild.exe