2010-04-22 196 views
5

有沒有人在Cruise Control中獲得一個MSBuild任務來加載記錄器?Cruise Control .NET 4.0 MSBUILD Logger

我試過變體,但它總是無法加載記錄器。

C:\ WINDOWS \ Microsoft.NET \框架\ v4.0.30319 \ MSBuild.exe C:\ WINDOWS \ Microsoft.NET \框架\ v4.0.30319 C:\建立\ MVC2Test \幹線\ MVC2Test \ MVC2Test.sln /noconsolelogger/p:配置= CruiseControl的/ v:DIAG 生成 ThoughtWorks.CruiseControl.MsBuild.XmlLogger,C:\程序文件(x86)\ CruiseControl.NET \服務器\ ThoughtWorks.CruiseControl.MsBuild .dll

如果可能,請發佈專門的.NET 4.0示例。

感謝

回答

7

對於我來說,讓.NET 4.0和巡航控制.NET會來到了這一點:

1)避免64位的MSBuild瘟疫一樣...有一個工作的32位編譯第一。

2)只需指定記錄器的完全限定路徑,而不是典型類, 彙編格式。

3)從VS 2010光盤部署定位包。 \ WCU \ MTPack \ NetFx_DTP.msi EXTUI = 1/log install.log

4)始終證明MSBuild首先從命令行運行。

5)解決方案中的文件創建一個配置,其中包括只有你想建立

<msbuild> 
    <!-- WARNING: You must copy the files from C:\Program Files (x86)\MSBuild\Microsoft\VisualStudio\v10.0\WebApplications to the same path on your build server --> 
    <executable>C:\Windows\Microsoft.NET\Framework\v4.0.30319\MSBuild.exe</executable> 
    <workingDirectory>C:\builds\SOLUTIONFOLDER\trunk\</workingDirectory> 
    <projectFile>C:\builds\SOLUTIONFOLDER\trunk\SOLUTIONNAME.sln</projectFile> 
    <buildArgs>/noconsolelogger /p:Configuration=CruiseControl /v:diag</buildArgs> 
    <targets>Build</targets> 
    <timeout>15</timeout> 
    <logger>C:\CruiseControl\server\ThoughtWorks.CruiseControl.MSBuild.dll</logger> 
</msbuild> 

現在,如果微軟只會讓我們輕鬆地在我們構建服務器上安裝MSTest的項目......人們一直在乞討5年來,微軟如何才能對測試知之甚少呢?

祝你好運。

+2

+1關於MSTest的觀點。我們不得不在我們的構建服務器上安裝VS,這簡直太愚蠢了。我想這是因爲他們希望我們使用TFS Build服務器,但現在它非常不成熟,因此CCNet是更好的選擇。 – John 2010-04-29 14:56:38

相關問題