使用node.js安装xml2json时出错
我试图安装node.js的xml2json包,但它给我错误。
错误如下:
我的系统configuration如下:
node.js版本 – v5.4.1
npm版本 – 3.3.12
操作系统 – Windows 10 64位
python – 2.7.11(设置为环境variables)
在安装微软窗口sdk v7.1后,它给了我下面的错误。
在添加package.json之后给出下面的错误。
在使用msbuild构build时,必须明确指定平台工具集(由node-gyp rebuild
触发)。 尝试下面的命令,之前运行npm
:
call "C:\Program Files\Microsoft SDKs\Windows\v7.1\bin\Setenv.cmd" /Release /x64
从SetEnv.cmd中查看下面传递参数的含义用法 :
/ Release – 创build发布configuration构build环境
/ x64 – 创build64位x64应用程序
补充说明
npm install xml2json
需要使用Windows SDK下的MSBuild来构build项目,同时安装包。 您遇到过Windows SDKconfiguration与node
不兼容的情况。
configurationWindows SDK命令提示符窗口部分:
如果您没有Visual Studio 2010,则可以使用Windows SDK命令提示符窗口和SetEnv实用程序来configuration您的应用程序生成设置。
所以我的build议是使用SetEnv实用程序来解决您的问题…
其他方法来解决问题
MSBuild使用VCTargetsPath属性,因为registry缺less此密钥,所以无法find它。
检查密钥是否存在并指向正确的path
- 启动regedit导航到HKLM \ SOFTWARE \ Microsoft \ MSBuild \ ToolsVersions \ WinSDKVersion
- 检查VCTargetsPath键。 值应该是“$(MSBuildExtensionsPath64)\ Microsoft.Cpp \ WinSDKVersion \”
如果密钥不存在或者值不正确,请按照以下步骤修复问题:
- 启动regedit导航到HKLM \ SOFTWARE \ Microsoft \ MSBuild \ ToolsVersions \ WinSDKVersion
- 添加string键VCTargetsPath键
- 将值设置为$(MSBuildExtensionsPath64)\ Microsoft.Cpp \ WinSDKVersion \“
WinSDKVersion == v4.0 (看起来像你的WinSDK版本的值),所以将WinSDKVersionreplace为v4.0 。
我相信你需要设置VCTargetsPath环境variables。
看看这个问题的答案,有几种不同的方法。
通过做这样的事情从命令行设置它可能是最简单的方法:
set VCTargetsPath=C:\Program Files (x86)\MSBuild\Microsoft.Cpp\v4.0\V120"
确切的path将取决于您安装的Visual Studio的版本。