Msbuild 生成取决于后生成Microsoft.Common.targets

Msbuild 生成取决于后生成Microsoft.Common.targets,msbuild,Msbuild,我想知道什么时候运行不同的目标。但是当谈到后构建目标时,我有点困惑,它的评论是“在项目中重新定义这个目标,以便在构建之后运行任务”。但当我看到构建依赖于什么时,我看到: <BuildDependsOn> BeforeBuild; CoreBuild; AfterBuild </BuildDependsOn> 建造前; 核心构建; 后建 这不是意味着构建目标在“后构建”之后运行,还是我在这里遗漏了什么?我是新手,所以我

我想知道什么时候运行不同的目标。但是当谈到后构建目标时,我有点困惑,它的评论是“在项目中重新定义这个目标,以便在构建之后运行任务”。但当我看到构建依赖于什么时,我看到:

<BuildDependsOn>
        BeforeBuild;
        CoreBuild;
        AfterBuild
 </BuildDependsOn>

建造前;
核心构建;
后建

这不是意味着构建目标在“后构建”之后运行,还是我在这里遗漏了什么?我是新手,所以我可能错过了一些琐碎的东西

您应该在同一个文件中做进一步的研究(只需在文本编辑器中搜索
BuildDependsOn
):您将看到
Build
目标本身只是一个存根,看起来像这样:

<Target
  Name="Build"
  DependsOnTargets="$(BuildDependsOn)"/>

请注意,这实际上是首选的方法:在大型项目中,重写后建是不可靠的,因为您不知道是否有其他人也已经这样做了,并且在多个位置重写它只会导致最后一个被调用的位置。

您应该在同一个文件中做一些进一步的研究(只需在文本编辑器中搜索
BuildDependsOn
):您将看到
Build
目标本身就是一个存根,看起来像这样:

<Target
  Name="Build"
  DependsOnTargets="$(BuildDependsOn)"/>
请注意,这实际上是首选的方法:在大型项目中,重写AfterBuild是不可靠的,因为您不知道其他人是否已经这样做了,并且在多个位置重写它只会导致最后一个被调用的位置