我在 ubuntu 14.04 和节点8.0.0 下使用 NPM 。
我已将 npm 从 5.2.0 升级为 5.6.0
但之后所有npm命令都失败,表明存在以下问题:
节点-GYP / bin中/节点-GYP
完整的日志如下:
npm ERR! code MODULE_NOT_FOUND
npm ERR! Cannot find module 'node-gyp/bin/node-gyp'
npm ERR! A complete log of this run can be found in:
npm ERR! /home/khalidvm/.npm/_logs/2018-01-12T15_02_35_338Z-debug.log
khalidvm@ubuntu:~/Desktop$ gedit /home/khalidvm/.npm/_logs/2018-01-12T15_02_35_338Z-debug.log
^C
khalidvm@ubuntu:~/Desktop$ sudo npm uninstall npm -g
npm ERR! code MODULE_NOT_FOUND
npm ERR! Cannot find module 'node-gyp/bin/node-gyp'
npm ERR! A complete log of this run can be found in:
npm ERR! /home/khalidvm/.npm/_logs/2018-01-12T15_05_25_322Z-debug.log
我担心我无法使用npm,即使卸载它也会引发同样的错误。
答案 0 :(得分:7)
如果你在Ubuntu 14.04上运行默认的node节点,那么软件包应该是过时的(我相信它是0.xx版本)并且是你问题的根源。你可以在这里查看:https://nodejs.org/en/download/package-manager/#debian-and-ubuntu-based-linux-distributions
使用最新的节点分发,node-gyp
遇到了同样的问题。事实证明我在/usr/local
下安装了 ghost 。那是重影我的node
可执行文件。
运行后删除它:
sudo rm -rf /usr/local/bin/node-gyp
sudo rm -rf /usr/local/bin/npm
sudo rm -rf /usr/local/bin/npx
sudo rm -rf /usr/local/lib/node_modules/
和清理我的主目录中的节点文件,以防止出现这种情况:
rm -rf ~/.node-gyp/
rm -rf ~/.npm/
我卸载了当前的节点安装,并重新安装:
sudo apt-get remove --purge nodejs
sudo apt-get install nodejs
答案 1 :(得分:1)
对我来说(Arch Linux)通过pacman安装node-gyp就足够了:
sudo pacman -Sy node-gyp
关于Arch,请参见:https://www.archlinux.org/packages/community/any/node-gyp/
sudo apt-get install node-gyp
对于Ubuntu,请参见:https://packages.ubuntu.com/de/trusty/web/node-gyp
答案 2 :(得分:1)