如何找出Visual Studio发送给MSBuild的命令?

问题描述 投票:3回答:2

我正在尝试在CI / CD引擎中使用MSBuild,我需要使用它发布一个ASP.NET Core MVC应用程序。

我想知道Visual Studio在构建/发布项目时发送给MSBuild的内容,并将其发送到MSBuild。

反正我们可以找到Visual Studio 2017发送给MSBuild的命令来构建/发布.NET Core项目吗?

更新:对于那些说VS使用MSBuild API的人,只需杀死所有MSBuild.exe进程,然后通过VS构建项目/解决方案,你就会看到MSBuild.exe回到进程列表(通过任务管理器查看)。那么,解释是什么?如果VS使用API​​,则该API应在devenv.exe进程内运行,并且任务管理器中不应出现MSBuild.exe实例。对?

更新2:devenv.exe是否公开其发布功能?

visual-studio msbuild
2个回答
1
投票

反正我们可以找到Visual Studio 2017发送给MSBuild的命令来构建/发布.NET Core项目吗?

不,您无法找到Visual Studio 2017发送给MSBuild以构建/发布.NET Core项目的命令。因为Visual Studio使用MSBuild API执行一系列任务来完成构建/发布:

Visual Studio使用MSBuild加载和构建托管项目。 Visual Studio中的项目文件(.csproj,.vbproj,vcxproj和其他)包含在使用IDE构建项目时执行的MSBuild XML代码。 Visual Studio项目导入所有必要的设置和构建过程以执行典型的开发工作,但您可以从Visual Studio中或使用XML编辑器扩展或修改它们。

所以没有命令发送到MSBuild,我们不会捕获命令。将MSBuild输出详细程度更改为“Diagnostic”或“Detailed”后,可以检查构建日志,以验证命令行是否存在。


1
投票

我希望那些linklink以某种方式帮助你,他们已经老了,但可能会给你一些指导你正在寻找的解决方案。

© www.soinside.com 2019 - 2024. All rights reserved.