MSBuild目标BeforeBuild未执行

时间:2010-06-28 10:37:46

标签: msbuild tfs2008 build-script

我似乎遇到的情况是我放入BeforeBuild目标的代码没有成功执行。

这就是我所拥有的:

<Target Name="BeforeBuild" >
    <Message Text="Before Build" />
</Target>

构建运行时,我无法在构建日志中看到消息输出。我格式化它的方式有问题,还是必须在脚本中的特定位置?我是否正在寻找这些消息的正确位置?

编辑:将重要性改为高似乎没有区别

2 个答案:

答案 0 :(得分:5)

查看此问题的答案 MS-Build BeforeBuild not firing

您只需移动BeforeBuild目标,使其出现在导入Microsoft.CSharp.targets的行之后。

答案 1 :(得分:0)

您需要正确覆盖Before build目标。最简单的方法是在标记之前插入覆盖,或将此任务声明为DefaultTargets。

<Project DefaultTargets="DesktopBuild" xmlns="http://schemas.microsoft.com/developer/msbuild/2003" ToolsVersion="3.5">
    <!-- Override TFS build targets and run custom made ones -->
  <Target Name="BeforeCompile" DependsOnTargets="VersionAssemblies"></Target>
  <Target Name="AfterCompile" DependsOnTargets="GetTime;RunTests;CreateHTMLReport;Mail"></Target>
  <Target Name="AfterDropBuild" DependsOnTargets="RemovePrevContent;CopySrcBinaries;ZipBinPackages;CopyAllContent;RemoveBindings"></Target>

</Project>