5

当我想通过msbuild命令行编译 Visual Studio 2012 解决方案时,我遇到了一个奇怪的问题。无论我做什么,它都会退出,Specified platform toolset (v110) is not installed or invalid.我尝试通过常规命令提示符、Windows 7 SDK 提示符以及 VS2012 中包含的所有三个命令提示符启动它。但是,在 Visual Studio 中编译本身可以工作。

where msbuild输出:

c:\Windows\Microsoft.NET\Framework64\v4.0.30319\MSBuild.exe c:\Windows\Microsoft.NET\Framework64\v3.5\MSBuild.exe

4

2 回答 2

7

您可能自己解决了这个问题,但也许它可以帮助其他有类似问题的人。尝试在运行 MSBuild 之前设置 VisualStudioVersion 环境变量,例如

SET VisualStudioVersion=11.0

有可能会有所帮助。

于 2013-06-10T13:18:58.070 回答
4

在尝试构建项目时,您还可以尝试将命令行参数/p:VisualStudioVersion=11.0 传递给 MSBuild。在上面的答案中,它似乎与设置环境变量的效果相同。

于 2013-08-04T08:26:52.483 回答