使用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

  1. 启动regedit导航到HKLM \ SOFTWARE \ Microsoft \ MSBuild \ ToolsVersions \ WinSDKVersion
  2. 检查VCTargetsPath键。 值应该是“$(MSBuildExtensionsPath64)\ Microsoft.Cpp \ WinSDKVersion \”

如果密钥不存在或者值不正确,请按照以下步骤修复问题:

  1. 启动regedit导航到HKLM \ SOFTWARE \ Microsoft \ MSBuild \ ToolsVersions \ WinSDKVersion
  2. 添加string键VCTargetsPath
  3. 将值设置为$(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的版本。