Как обновить npm

92

Я пытаюсь установить шаблон mean.io. Он не работает при запуске sudo npm install -g meanio@latest. До отказа он отмечает, что он "хочет" npm версии 1.4.x, тогда как у меня установлен 1.2.18. Поэтому я попытался обновить npm до последней версии; несколько путей. Последний из которых был...

ubuntu@ip-xxx-xx-xx-xxx:~$ sudo npm install -g npm
/usr/local/bin/npm -> /usr/local/lib/node_modules/npm/bin/npm-cli.js
npm@1.4.7 /usr/local/lib/node_modules/npm

ubuntu@ip-xxx-xx-xx-xxx:~$ npm --version
1.2.18

Почему он все еще показывает версию 1.2.18, когда я только что обновил до 1.4.7?

Показать ещё 3 комментария
Теги:
npm

16 ответов

149

Это обновит npm, используя сам npm:

sudo npm install npm -g

Если вы застряли, попробуйте sudo npm update npm -g. Вся заслуга Тиму Кастелийнсу. Я проверил это на Ubuntu 14.04, NPM 1.3.10


Обратите внимание, что если вы используете nvm для управления несколькими версиями в вашей локальной среде разработчика, например, в целях тестирования, все ваши установленные версии (перечисленные в nvm ls) находятся в ~/.nvm, следовательно, вы просто пропускаете общесистемную установку (то есть опускаете sudo):

npm install npm -g

ДЕБИЙСКОЕ ПРЕДПРИЯТИЕ

Для полной практики предприятия рассмотрим nodeource.com:

завиток -sL https://deb.nodesource.com/setup | Судо Баш -

как описано здесь.

ДРУГОЕ ПРЕДПРИЯТИЕ

Чтобы узнать о дистрибутивах, отличных от Debian, зайдите на узел github вики https://github.com/joyent/node/wiki/install-node.js-via-package-manager на странице загрузки https://nodejs.org/en/download/

Для исторического понимания: Чис-Ли поддерживал свой PPA, но теперь объединил свои силы с узловым источником.

  • 0
    Я бы рекомендовал использовать репозиторий PPA, чтобы вы позволили менеджеру пакетов Ubuntu поддерживать обновления вместе со всем остальным.
  • 0
    На некоторых производственных серверах, да, может быть. Но на dev вы действительно хотите гарантировать, что вы получите материал напрямую от сопровождающего пакета npm, а не от сопровождающего PPA
Показать ещё 6 комментариев
34

если user3223763 ответ не работает, вы можете попробовать следующее:

sudo apt-get remove nodejs ^node-* nodejs-*
sudo apt-get autoremove
sudo apt-get clean
curl -sL https://deb.nodesource.com/setup_8.x | sudo -E bash -
sudo apt-get install nodejs

Тогда:

curl https://raw.githubusercontent.com/creationix/nvm/v0.33.2/install.sh | sh

После этого откройте новый терминал и проверьте версию npm:

npm --version

EDIT/UPDATE:

Сегодня последняя версия nvm:

https://raw.githubusercontent.com/creationix/nvm/v0.25.4/install.sh

Таким образом, команда CURL: v0.25.4 вместо v0.13.1

curl https://raw.githubusercontent.com/creationix/nvm/v0.25.4/install.sh | sh

Вы можете проверить https://github.com/creationix/nvm/releases, чтобы использовать правильную версию для дальнейших обновлений

  • 2
    user3223763 не работал для меня, как и самообновление npm. Спасибо Даниэль
  • 2
    Я могу подтвердить, что этот метод помог обновить npm. В предыдущих методах библиотеки имели неудовлетворенные зависимости или обновляли npm, но не обновляли путь / среду для использования нового местоположения.
Показать ещё 2 комментария
13

Похоже, вы используете Ubuntu (из командной строки, которую вы показываете). Для обновления npm и nodejs вы можете использовать репозиторий PPA:

sudo add-apt-repository ppa:chris-lea/node.js
sudo apt-get update
sudo apt-get install nodejs npm
  • 0
    E: The repository 'http://ppa.launchpad.net/chris-lea/node.js/ubuntu bionic Release' does not have a Release file. N: Updating from such a repository can't be done securely, and is therefore disabled by default. N: See apt-secure(8) manpage for repository creation and user configuration details. для Ubuntu 18.04
  • 0
    Ошибка : 11 ppa.launchpad.net/chris-lea/node.js/ubuntu Бионическая версия 404 не найдена [IP: 91.189.95.83 80]
Показать ещё 1 комментарий
6

Вы можете попробовать:

sudo npm i -g npm
6

Попробовал описанные выше варианты в Ubuntu 14.04, но они будут постоянно выдавать эту ошибку:

нпм ERR! tar pack Ошибка чтения /root/tmp/npm-15864/1465947804069-0.4854120113886893/package

Тогда нашел это решение онлайн:

1) Сначала очистите кэш npm:

sudo npm cache clean -f

2) Установить н модуль НПМ:

sudo npm install -g n

3) Начните установку, выбрав версию узла для установки: стабильную или последнюю, мы будем использовать стабильную версию здесь:

sudo n stable

4) Проверьте версию узла:

node -v

5) Проверьте версию npm:

npm -v
  • 0
    Этот ответ может использовать некоторые расширения, чтобы объяснить, что делают менее очевидные команды.
4

Чтобы получить последнюю стабильную версию, просто запустите

npm install npm@latest -g

Это сработало для меня отлично!

2

обновление до nodejs v0.12.7

 # Note the new setup script name for Node.js v0.12
 curl -sL https://deb.nodesource.com/setup_0.12 | sudo bash -

 # Then install with:
 sudo apt-get install -y nodejs

Источник from nodesource.com

1
npm i -g npm

      Update available 4.5.0 → 4.6.1    │
   │     Run npm i -g npm to update 

это то, что npm рекомендует, когда в терминале вторая часть напрямую копируется и вставлена ​​с моего терминала

Примечание: im использует mac

  • 0
    Вопрос конкретно об Ubuntu, а не о OSX. Если я попробовал вашу команду в Ubuntu, npm завершится с Error: Cannot find module 'process-nextick-args' . Вы должны удалить свой ответ.
0

sudo npm install -g npm

Запустите команду выше, чтобы обновить npm.

0

не забудьте закрыть и снова запустить окно терминала;)

(по крайней мере, если вы хотите проверить "npm --version" в терминале)

sudo npm install npm -g

это тоже помогло мне

  • 0
    Спасибо! Это сработало для меня.
0

Для Ubuntu 18.04

npm установить последнюю версию

Я надеюсь, что это также для вас

0
nvm install-latest-npm

если вам случится использовать nvm

0

Проверьте версию узла узел -v и ваш НПМ версии НПМ -v Затем Чтобы обновить НПМ, введите это в терминале: Суда НПМ установки NPM @последняя -g

NB: ОС на основе Debian {ubuntu или Linux mint}

0

Вот что сработало для меня в Ubuntu curl -L https://www.npmjs.com/install.sh | sh curl -L https://www.npmjs.com/install.sh | sh

0

Проверьте свой узел версии node -v и версию npm -v Затем, чтобы обновить npm, введите его в свой терминал: npm install npm@latest -g

Надеюсь, я смогу помочь. С уважением

0

Если вы хотите обновить npm до определенной версии, вы можете использовать это:

npm install npm@version-number

Сообщество Overcoder
Наверх
Меню