npm java 包未安装

npm java package not getting installed

npm Java 软件包未安装。已经尝试了一个多星期了,但没有成功。
我已经安装了 Visual Studio Express 2013 for Windows.
我也安装了 Python v2.7
我的 regedit 中的当前 Java 版本设置为 1.7
在安装之前,我做了一个 npm config set msvs_version 2013,然后我做了 npm install java,它抛出了错误:

> java@0.7.2 install C:\Users60641\AppData\Roaming\npm\node_modules\java
> node-gyp rebuild

C:\Users60641\AppData\Roaming\npm\node_modules\java>if not defined npm_config_node_gyp (node "C:\Program Files\nodejs\node_modules\npm\bin\node-gyp-bin\..\..\node_modules\node-gyp\bin\node-gyp.js" rebuild )  else (node  rebuild )
C:\Users60641\AppData\Roaming\npm\node_modules\java\build\binding.sln : error MSB3411: Could not load the Visual C++ component "VCBuild.exe". If the component is not installed, either 1) install the Microsoft Windows SDK for Windows Server 2008 and .NET Framework 3.5, or 2) install Microsoft Visual Studio 2008.
gyp ERR! build error
gyp ERR! stack Error: `msbuild` failed with exit code: 1
gyp ERR! stack     at ChildProcess.onExit (C:\Program Files\nodejs\node_modules\npm\node_modules\node-gyp\lib\build.js:269:23)
gyp ERR! stack     at ChildProcess.emit (events.js:110:17)
gyp ERR! stack     at Process.ChildProcess._handle.onexit (child_process.js:1074:12)
gyp ERR! System Windows_NT 6.1.7601
gyp ERR! command "node" "C:\Program Files\nodejs\node_modules\npm\node_modules\node-gyp\bin\node-gyp.js" "rebuild"
gyp ERR! cwd C:\Users60641\AppData\Roaming\npm\node_modules\java
gyp ERR! node -v v0.12.7
gyp ERR! node-gyp -v v2.0.1
gyp ERR! not ok
npm ERR! Windows_NT 6.1.7601
npm ERR! argv "C:\Program Files\nodejs\\node.exe" "C:\Program Files\nodejs\node_modules\npm\bin\npm-cli.js" "install" "java"
npm ERR! node v0.12.7
npm ERR! npm  v2.11.3
npm ERR! code ELIFECYCLE

npm ERR! java@0.7.2 install: `node-gyp rebuild`
npm ERR! Exit status 1
npm ERR!
npm ERR! Failed at the java@0.7.2 install script 'node-gyp rebuild'.
npm ERR! This is most likely a problem with the java package,
npm ERR! not with npm itself.
npm ERR! Tell the author that this fails on your system:
npm ERR!     node-gyp rebuild
npm ERR! You can get their info via:
npm ERR!     npm owner ls java
npm ERR! There is likely additional logging output above.

npm ERR! Please include the following file with any support request:
npm ERR!     C:\Users60641\Desktop\test\npm-debug.log

然后我做了npm install --msvs_version=2013
它再次抛出错误:

C:\Users60641\Desktop\test>npm install --msvs_version=2013
npm ERR! install Couldn't read dependencies
npm ERR! Windows_NT 6.1.7601
npm ERR! argv "C:\Program Files\nodejs\\node.exe" "C:\Program Files\nodejs\node_modules\npm\bin\npm-cli.js" "install" "--msvs_version=2013"
npm ERR! node v0.12.7
npm ERR! npm  v2.11.3
npm ERR! path C:\Users60641\package.json
npm ERR! code ENOPACKAGEJSON
npm ERR! errno -4058

npm ERR! package.json ENOENT, open 'C:\Users60641\package.json'
npm ERR! package.json This is most likely not a problem with npm itself.
npm ERR! package.json npm can't find a package.json file in your current directory.

npm ERR! Please include the following file with any support request:
npm ERR!     C:\Users60641\Desktop\test\npm-debug.log

然后我又做了npm install java --msvs_version=2013 --global
再次出现错误:

C:\Users60641\Desktop\test>npm install java --msvs_version=2013 --global
/
> java@0.7.2 install C:\Users60641\AppData\Roaming\npm\node_modules\java
> node-gyp rebuild


C:\Users60641\AppData\Roaming\npm\node_modules\java>if not defined npm_config_node_gyp (node "C:\Program Files\nodejs\node_modules\npm\bin\node-gyp-bin\..\..\node_modules\node-gyp\bin\node-gyp.js" rebuild )  else (node  rebuild )
C:\Users60641\AppData\Roaming\npm\node_modules\java\build\binding.sln : error MSB3411: Could not load the Visual C++ component "VCBuild.exe". If the component is not installed, either 1) install the Microsoft Windows SDK for Windows Server 2008 and .NET Framework 3.5, or 2) install Microsoft Visual Studio 2008.
gyp ERR! build error
gyp ERR! stack Error: `msbuild` failed with exit code: 1
gyp ERR! stack     at ChildProcess.onExit (C:\Program Files\nodejs\node_modules\npm\node_modules\node-gyp\lib\build.js:269:23)
gyp ERR! stack     at ChildProcess.emit (events.js:110:17)
gyp ERR! stack     at Process.ChildProcess._handle.onexit (child_process.js:1074:12)
gyp ERR! System Windows_NT 6.1.7601
gyp ERR! command "node" "C:\Program Files\nodejs\node_modules\npm\node_modules\node-gyp\bin\node-gyp.js" "rebuild"
gyp ERR! cwd C:\Users60641\AppData\Roaming\npm\node_modules\java
gyp ERR! node -v v0.12.7
gyp ERR! node-gyp -v v2.0.1
gyp ERR! not ok
npm ERR! Windows_NT 6.1.7601
npm ERR! argv "C:\Program Files\nodejs\\node.exe" "C:\Program Files\nodejs\node_modules\npm\bin\npm-cli.js" "install" "java" "--msvs_version=2013" "--global"
npm ERR! node v0.12.7
npm ERR! npm  v2.11.3
npm ERR! code ELIFECYCLE

npm ERR! java@0.7.2 install: `node-gyp rebuild`
npm ERR! Exit status 1
npm ERR!
npm ERR! Failed at the java@0.7.2 install script 'node-gyp rebuild'.
npm ERR! This is most likely a problem with the java package,
npm ERR! not with npm itself.
npm ERR! Tell the author that this fails on your system:
npm ERR!     node-gyp rebuild
npm ERR! You can get their info via:
npm ERR!     npm owner ls java
npm ERR! There is likely additional logging output above.

npm ERR! Please include the following file with any support request:
npm ERR!     C:\Users60641\Desktop\test\npm-debug.log

我想知道出了什么问题。
我正在使用节点版本 0.12.7
而我安装的node-gym版本是最新的。在错误日志中,某行显示为:

gyp ERR! node -v v0.12.7
gyp ERR! node-gyp -v v2.0.1
gyp ERR! not ok

我不想升级我的 NodeJS 版本,因为它是我们的客户希望我们使用的版本。
请帮忙!

已找到修复程序。
有时 msvs_version 参数设置不正确。
做了一个 npm config list 检查 msvs_version.
的值 它显示 2015。更改它:npm config set msvs_version 2013 并再次检查值:npm config list.
又安装了一个软件包 Microsoft Build tool 2013。这与 Visual Studio 2013 Express.
兼容 之后在 User Environment VariableSystem Environment Variable 中为 MSBuild.exe 设置 path。对我来说,路径是 C:\Program Files\MSBuild.0\Bin。附加以“;”开头的路径即 ;C:\Program Files\MSBuild.0\Bin.
现在 运行 npm install java。它应该可以工作。

这是我针对我所面临的同类问题的解决方案...这应该有效。

运行

在管理员特权命令提示符下 window

npm install -g node-gyp
npm install --global --production windows-build-tools 
npm update 
npm install java