2016-08-24 196 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