2011-06-20 81 views
0

我是新来的,请耐心等待。我想知道如何让MSbuild和FXcop运行一夜,并告知用户是否失败而未完成。我被告知他们都可以集成到CruiseControl.NET中。我目前正在查看CruiseControl.NET是否有能力通知用户构建失败。 (由于错误只完成了一半)。如果有人能够轻松地做到这一点,如果你能走过我的想法或将我带到文件中,那将是美好的。FXcop和Msbuild与CruiseControl.NET

感谢您的时间,丹尼斯海登。 睡眠

回答

2

您可以使用<MsBuild>任务来构建您的项目。 MsBuild在任务部分中可用。

<msbuild> 
     <executable> 
     C:\WINDOWS\Microsoft.NET\Framework\v3.5\MSBuild.exe 
     </executable> 
     <workingDirectory> 
     project path 
     </workingDirectory> 
     <projectFile>project.sln</projectFile> 
     <buildArgs> 
     /noconsolelogger 
     /p:Configuration=Release 
     </buildArgs> 
     <targets>Build</targets> 
     <timeout>900</timeout> 
     <logger>C:\Program Files\CruiseControl.NET\server\ThoughtWorks.CruiseControl.MsBuild.dll</logger> 

    </msbuild> 

在任务部分有一个<exec>标签,其可被用于运行的FxCop。

<exec> 
      <executable>c:\Program Files\Microsoft FxCop 1.36\FxCopCmd.exe</executable> 
      <baseDirectory>project path</baseDirectory> 
      <buildTimeoutSeconds>300</buildTimeoutSeconds> 
</exec> 

请查看以下链接

ccnet1ccnet2

+0

此代码是有用的,但我不知道它是否发生。我想我应该解释我甚至无法让MSbuild工作。没有人正在写一本我可以遵循的指南。代码在哪里运行?任何人都可以解释这一点,或者发布易于理解信息的链接。谢谢 –

1

在文档的Tasks部分,您应该看到一个MsBuild条目。要运行FxCop,可以通过MsBuild运行它,或者使用可执行任务。

1

还有的MSBuild Community Tasks一个很好的集合,有FxCop的支持,以及作为一个整体的该派上用场,当其他工具套件创建一个CI环境。