2016-08-24 195 views
0

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

> [email protected] install C:\Users\1060641\AppData\Roaming\npm\node_modules\java 
> node-gyp rebuild 

C:\Users\1060641\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:\Users\1060641\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:\Users\1060641\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! [email protected] install: `node-gyp rebuild` 
npm ERR! Exit status 1 
npm ERR! 
npm ERR! Failed at the [email protected] 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:\Users\1060641\Desktop\test\npm-debug.log 

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

C:\Users\1060641\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:\Users\1060641\package.json 
npm ERR! code ENOPACKAGEJSON 
npm ERR! errno -4058 

npm ERR! package.json ENOENT, open 'C:\Users\1060641\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:\Users\1060641\Desktop\test\npm-debug.log 

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

C:\Users\1060641\Desktop\test>npm install java --msvs_version=2013 --global 
/
> [email protected] install C:\Users\1060641\AppData\Roaming\npm\node_modules\java 
> node-gyp rebuild 


C:\Users\1060641\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:\Users\1060641\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:\Users\1060641\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! [email protected] install: `node-gyp rebuild` 
npm ERR! Exit status 1 
npm ERR! 
npm ERR! Failed at the [email protected] 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:\Users\1060641\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版本。
请帮忙!

回答

0

找到了解决办法。
有时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 Variable以及System Environment Variable中设置pathMSBuild.exe。对我来说,路径是C:\Program Files\MSBuild\12.0\Bin。追加以“;”开头的路径即;C:\Program Files\MSBuild\12.0\Bin
现在运行npm install java。它应该工作。

0

这是我面对的同类问题的解决方案......这应该可行。

运行

在管理员特权命令提示窗口

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