如何添加停止 msbuild 构建项目 Visual Studio 构建选项

Posted

技术标签:

【中文标题】如何添加停止 msbuild 构建项目 Visual Studio 构建选项【英文标题】:how to add stop msbuild from building the project visual studio build option 【发布时间】:2021-05-25 10:18:27 【问题描述】:

我想停止 msbuild 默认的“构建”目标来停止构建我的代码,我想定义我的自定义目标来构建我的应用程序。如何做到这一点?

谢谢,

【问题讨论】:

【参考方案1】:

只需打开项目的csproj 文件即可。

并在文件底部添加这些:

<Target Name="Build">

//write your custom build function

</Target>

它将覆盖默认构建并使用您的。

【讨论】:

当我在 csproj 中添加它时,没有效果,但是当我在我的 msbuild 扩展中添加这些行时,我可以看到默认构建已停止。我会进一步检查。 或者您可以在项目文件夹中创建一个名为 Directory.Build.targets 的文件,然后将我的函数添加到该文件中。 创建一个文件,在this issue下使用同样的思路。 当我在我的 csproj 中添加上述代码时,它不起作用。我的项目中有 MSBuild 扩展。正如我之前提到的,如果我在扩展中添加它,它可以工作,但在我的情况下,我希望少数项目的这种行为和少数项目的默认构建。您能建议我放入 csproj 文件时可能出现什么问题吗? 嗨 Perry Qian-MSFT ,当我将 (Directory.Build.targets) 放入带有构建目标的项目中时,为 C# 项目工作,但是当将相同的文件放入 c++ 项目中时,自定义构建目标是没有被执行。你也可以为 c++ 项目提供帮助吗?

以上是关于如何添加停止 msbuild 构建项目 Visual Studio 构建选项的主要内容,如果未能解决你的问题,请参考以下文章

如何使用msbuild首先构建依赖项目

如何使用 MSBuild 按特定顺序在解决方案中构建项目?

如何使用 MSBuild 为每个项目的每个构建配置提供不同的 OutputPath?

如何解决以下 xmlns MSBuild 错误?

使用 MSBuild 构建 gRPC dotnet 核心项目时如何包含自定义目录

MSBuild 中的 FxCop 和禁用 CA0060 异常