在Jenkins上构建时,VS2012解决方案中的MSB4019

Bou*_*les 3 msbuild visual-c++ windows-7-x64 jenkins visual-studio-2012

我正在设置我们的构建服务器.我在Windows 7机器上安装了Jenkins,在构建64位版本的解决方案时遇到了问题.

我们正在使用Visual Studio 2012 Express for Windows Desktop.Jenkins使用MSBuild插件,目标是64位MSbuild exe

C:\Windows\Microsoft.NET\Framework64\v4.0.30319\msbuild.exe
Run Code Online (Sandbox Code Playgroud)

但是,当它运行msbuild时,没有正确解析环境变量.VCTargetsPath.

如果我按原样保留所有内容,那么MSBuild的输出就是这个

错误MSB4019:找不到导入的项目"C:\ Microsoft.Cpp.Default.props".确认声明中的路径是否正确,以及该文件是否存在于磁盘上.

我在注册表,Windwos环境变量和Jenkins Eviornment变量中使用了VCTargetsPath变量.我注意到了这种行为.

如果我将VCTargetsPath设置为"C:\ Program Files(x86)\ MSBuild\Microsoft.Cpp\v4.0\V110",那么msbuild的输出与上面相同.但是,如果我将其设置为"C:\ Program Files(x86)\ MSBuild\Microsoft.Cpp\v4.0",则输出将更改为此.

错误MSB4019:找不到导入的项目"C:\ progra~2\MSBuild\Microsoft.Cpp\v4.0\Microsoft.Cpp.Default.props".确认声明中的路径是否正确,以及该文件是否存在于磁盘上.

瓷砖Microsoft.Cpp.Default.props位于"C:\ Program Files(x86)\ MSBuild\Microsoft.Cpp\v4.0\V110"中.我检查了环境变量长度的限制,它应该是2048个字符.我错过了一些明显的东西吗?我发现了一些信息基本上说我将不得不以特定的顺序重新安装所有内容,这非常烦人(但也非常微软).

Mon*_*ded 6

我加入这个固定
/p:VCTargetsPath="C:\Program Files\MSBuild\Microsoft.Cpp\v4.0\V120"
更多地飘逸
/p:VisualStudioVersion=12.0


Build > Build a Visual Studio project or solution using MSBuild > Command Line Arguments