0.問題描述node
Windows 10git
最近使用npm install安裝項目依賴包,當自動執行至node-gyp rebuild時報錯:github
C:\Users\dsl\Desktop\Pros\ant-design-pro-master-v3.1.0>npm install > weak@1.0.1 install C:\Users\dsl\Desktop\Pros\ant-design-pro-master-v3.1.0\node_modules\weak > node-gyp rebuild C:\Users\dsl\Desktop\Pros\ant-design-pro-master-v3.1.0\node_modules\weak>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 ) 在此解決方案中一次生成一個項目。若要啓用並行生成,請添加「/m」開關。 MSBUILD : error MSB4132: 沒法識別工具版本「2.0」。可用的工具版本爲 "4.0"。 gyp ERR! build error gyp ERR! stack Error: C:\Windows\Microsoft.NET\Framework\v4.0.30319\msbuild.exe 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:258:23) gyp ERR! stack at emitTwo (events.js:126:13) gyp ERR! stack at ChildProcess.emit (events.js:214:7) gyp ERR! stack at Process.ChildProcess._handle.onexit (internal/child_process.js:198:12) gyp ERR! System Windows_NT 10.0.16299 gyp ERR! command "C:\Program Files\nodejs\node.exe" "C:\Program Files\nodejs\node_modules\npm\node_modules\node-gyp\bin\node-gyp.js" "rebuild" gyp ERR! cwd C:\Users\dsl\Desktop\Pros\ant-design-pro-master-v3.1.0\node_modules\weak gyp ERR! node -v v8.9.1 gyp ERR! node-gyp -v v3.6.2 gyp ERR! not ok ....
1.具體緣由npm
項目依賴中,node-gyp調用MSBuild工具進行組件編譯,找不到MSBuild2.0,而系統裏只有MSBuild4.0。工具
2.解決辦法ui
參考https://github.com/nodejs/node-gyp/issues/629#issuecomment-153196245 mousetraps說的方案1~4,如下是本人的方案1~3:spa
C:\Users\dsl\Desktop\Pros\ant-design-pro-master-v3.1.0>npm install --msvs_version 2015