【发布时间】:2013-12-26 15:41:51
【问题描述】:
我正在设置我们的构建服务器。我在 Windows 7 机器上安装了 Jenkins,在构建 64 位版本的解决方案时遇到了问题。
我们正在使用适用于 Windows 桌面的 Visual Studio 2012 Express。 Jenkins 使用 MSBuild 插件,目标是 64 位 MSbuild exe
C:\Windows\Microsoft.NET\Framework64\v4.0.30319\msbuild.exe
但是,当它运行 msbuild 时,没有正确解析环境变量。 VCTargetsPath。
如果我保持一切原样,那么 MSBuild 的输出就是这个
错误 MSB4019:未找到导入的项目“C:\Microsoft.Cpp.Default.props”。确认声明中的路径正确,并且该文件存在于磁盘上。
我在注册表中使用了 VCTargetsPath 变量、Windwos 环境变量以及 Jenkins Eviornment 变量。我注意到了这种行为。
如果我将 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 个字符。我在这里遗漏了一些明显的东西吗?我发现一些信息基本上说我将不得不以特定顺序重新安装所有东西,这很烦人(但也很微软)。
【问题讨论】:
标签: visual-c++ visual-studio-2012 msbuild jenkins windows-7-x64