如何在缺少内容文件时使MSBuild失败

ili*_*ian 15 cruisecontrol.net msbuild visual-studio-2008

我注意到,当内容文件丢失时,我们的巡航控制服务器不会使构建失败.

当javascript /图形文件等缺失时,我想失败.如何使用从svn中提取的文件验证项目文件?

Say*_*imi 19

您可以创建一个目标来检查以确保所有内容文件都在物理上位于磁盘上,如果不是这样,则会引发错误.这是一个目标

<Target Name="ValidateContentFiles">
  <Error Condition="!Exists(%(Content.FullPath))" 
         Text="Missing Content file [%(Content.FullPath)]"/>
</Target>
Run Code Online (Sandbox Code Playgroud)

您可以通过将此目标添加到Project元素的InitialTargets属性来确保每次都执行此目标.例如

<Project InitialTargets="ValidateContentFiles"
         ToolsVersion="3.5" DefaultTargets="Build" 
         xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
Run Code Online (Sandbox Code Playgroud)

Sayed Ibrahim Hashimi

我的书:Microsoft Build Engine内部:使用MSBuild和Team Foundation Build