Не удается найти модуль «поддержка агентов» при обновлении NPM до 7.20.3

#node.js #npm #nvm

Вопрос:

Когда я пытаюсь обновить npm до 7.20.3 ( npm install -g npm@7.20.3 ), npm выдает :

 npm ERR! code MODULE_NOT_FOUND
npm ERR! Cannot find module 'agentkeepalive'
npm ERR! Require stack:
npm ERR! - /Users/ShaggyRogers/.nvm/versions/node/v14.16.0/lib/node_modules/npm/node_modules/make-fetch-happen/agent.js
...
 

Ответ №1:

Чтобы быстро исправить эту ошибку, просто установите или переустановите ее глобально agentkeepalive :

 npm install -g agentkeepalive --save
 

Затем обновите npm :

 npm install -g npm@7.20.3
 

Обновить :

С 23 июня 2021 года ошибка, похоже, исправлена в v7.17.0 (проблема с GitHub)

Сначала вы можете перейти на v7.17.0 :

 npm install -g npm@7.17.0
 

Затем обновите npm до последней версии :

 npm install -g npm@7.21.0
 

или

 npm install -g npm@latest
 

Комментарии:

1. Это, похоже, работает, но было бы полезно, если бы вы добавили некоторое объяснение, почему это необходимо, или ссылку на соответствующий отчет об ошибке, где это обсуждается.

2. Можете ли вы подробно описать свою проблему ?

3. Спасибо за вашу помощь! Это прекрасно сработало для меня

Ответ №2:

Это обсуждалось на github

TL;DR;

Это было исправлено в npm версии 7.17.0 и новее. Мне удалось обновить с 7.10.0 до 7.21.0 и полностью избежать этой ошибки (и не иметь дело с поддержкой агента), обновив сначала до 7.17.0, а затем до 7.21.0.

Комментарии:

1. Я пробовал, но это не сработало. Aviator@AW:/mnt/c/Users/Adrian$ установка npm-g npm@7.17.0 нпм ОШИБАЕТСЯ! код MODULE_NOT_FOUND npm ОШИБКА! Не удается найти модуль ‘agentkeepalive’, хотя установка agentkeepalive работала.

2. Может быть, «правильный» способ-это просто удалить ( docs.npmjs.com/cli/v7/using-npm/removal ), а затем установите последнюю версию.

3. Похоже, он вернулся при обновлении с 7.13.0 до 8.1.3

4. Это неудивительно, так как 7.13.0 старше 7.17.0