Cruise Control .NET 4.0 MSBUILD Logger

AUS*_*RJL 5 cruisecontrol.net msbuild logging .net-4.0

有没有人在Cruise Control中获得MSBuild任务来加载记录器?

我尝试过各种变体但总是无法加载记录器.

C:\ Windows\Microsoft.NET\Framework\v4.0.30319\MSBuild.exe C:\ Windows\Microsoft.NET\Framework\v4.0.30319 C:\ builds\MVC2Test\trunk\MVC2Test\MVC2Test.sln/noconsolelogger/p :Configuration = CruiseControl/v:diag Build 15 ThoughtWorks.CruiseControl.MsBuild.XmlLogger,C:\ Program Files(x86)\ CruiseControl.NET\server\ThoughtWorks.CruiseControl.MsBuild.dll

如果可能,请发布专门的.NET 4.0示例.

谢谢

AUS*_*RJL 7

对我来说,获得.NET 4.0和Cruise Control .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>
Run Code Online (Sandbox Code Playgroud)

现在,如果微软只让我们轻松地在我们的构建服务器上安装MSTest ......人们已经乞求了5年,那么微软如何在测试方面学到的东西如此之少?

祝你好运.

  • +1关于MSTest的观点.我们必须在我们的构建服务器上安装VS,这简直太愚蠢了.我想这是因为他们希望我们使用TFS Build服务器,但现在CCNet是更好的选择. (2认同)