NPM: Не удается найти модуль 'node -gyp/bin/node -gyp'

Я использую NPM под моим ubuntu 14.04 и узлом 8.0.0.

Я обновил свой npm с 5.2.0 до 5.6.0

но после этого все команды npm не работают, указывая на проблему:

Узел-мошенник/бен/узел-мошенник

Полный журнал следующий:

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
[email protected]:~/Desktop$ gedit /home/khalidvm/.npm/_logs/2018-01-12T15_02_35_338Z-debug.log
^C
[email protected]:~/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, даже удаляя его, бросает ту же ошибку.

Ответ 1

Если вы используете стандартную установку узла на Ubuntu 14.04, пакет должен быть устаревшим (я считаю, что это версия 0.xx) и будет источником ваших проблем. Вы можете исправить это, посмотрев здесь: https://nodejs.org/en/download/package-manager/#debian-and-ubuntu-based-linux-distributions

Работая с обновленным распределением узла, у меня была такая же проблема с node-gyp. Оказалось, что у меня была установка призраков в /usr/local. Это было ореолом моего исполняемого 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