C# 通过命令提示符构建VS解决方案

C# 通过命令提示符构建VS解决方案,c#,visual-studio-2015,msbuild,C#,Visual Studio 2015,Msbuild,我有一个项目的解决方案。能够通过VS GUI构建它。 我想通过命令提示符构建它。但是,如果出现错误: 使用的命令: “C:\Windows\Microsoft.NET\Framework64\v4.0.30319\MSBuild.exe”“C:\Users\xxx\Desktop\WebApplication1\WebApplication1.sln”/t:build 错误: 错误MSB4019:导入的 项目“C:\Program Files(x86)\MSBuild\Microsoft\Vis

我有一个项目的解决方案。能够通过VS GUI构建它。 我想通过命令提示符构建它。但是,如果出现错误:

使用的命令:

“C:\Windows\Microsoft.NET\Framework64\v4.0.30319\MSBuild.exe”“C:\Users\xxx\Desktop\WebApplication1\WebApplication1.sln”/t:build

错误:

错误MSB4019:导入的 项目“C:\Program Files(x86)\MSBuild\Microsoft\VisualStudio\v11.0\WebApplications\Microsoft.WebApplication.targets” 找不到。确认声明中的路径正确,并且文件存在于磁盘上


如何解决这个问题。请建议。

如果您尝试在其上生成项目的计算机(例如生成代理)上未安装Visual Studio,则可能会发生这种情况

验证是否安装了VS,或者如果这不是一个选项,则可以在package manager控制台中运行以下命令:

Install-Package MSBuild.Microsoft.VisualStudio.Web.targets

此包将更新项目的.csproj文件,以使用目标的VS版本(如果存在),否则将更新包文件夹中包含的本地版本。

MSBuild的路径应为“C:\Program Files(x86)\MSBuild\14.0\Bin\MSBuild.exe”,而不是“C:\Windows\Microsoft.NET\Framework64\v4.0.30319\MSBuild.exe”

根据Visual Studio博客::

从Visual Studio 2013开始,2013版本的MSBuild将作为Visual Studio而不是.NET Framework的一部分发布。此转换允许我们更快速地发展MSBuild

因此,在Visual Studio 2015中通过命令提示符生成项目时,MSBuild的路径应为“C:\Program Files(x86)\MSBuild\14.0\Bin\MSBuild.exe”


希望这能对你有所帮助。

@CodingYoshi:哪一个是答案。在你给出的链接中找不到答案。