【问题标题】:Why is <Target Name="Build"> not found in any .csproj file?为什么在任何 .csproj 文件中都找不到 <Target Name="Build">?
【发布时间】:2012-11-09 21:43:34
【问题描述】:

只是好奇 - 每当我看到 .csproj 的 xml 时,它都以 DefaultTargets="Build" 开头,因此我认为应该存在 &lt;Target Name="Build"&gt;;但是,我从未在任何.csproj 文件中找到此默认目标。

VS 是在编译之前注入这个目标,还是 msbuild 默认构建它。内部发生了什么?

【问题讨论】:

  • 查看通过 导入的构建文件

标签: c# visual-studio msbuild


【解决方案1】:

您会在文件底部附近看到这个; &lt;Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" /&gt; 导入标准目标,“构建”就是其中之一。导入会根据项目文件中可用的其他数据以动态方式生成“构建”目标。

【讨论】:

  • 如何按照 $(MSBuildToolsPath) / $(MSBuildExtensionsPath) 路径查看实际目标是什么?
【解决方案2】:

一个 csproj 通常有这个:

  <Import Project="$(MSBuildBinPath)\Microsoft.CSharp.targets" />

根据MSDN,它还导入 Microsoft.Common.targets,这是定义该目标的位置。

【讨论】:

    【解决方案3】:

    项目文件中的某处有一个或多个 可以导入应具有该目标的其他文件...

    【讨论】:

      猜你喜欢
      • 2012-05-01
      • 2018-07-13
      • 2021-10-31
      • 2013-05-29
      • 2017-04-02
      • 2012-06-26
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多