Как я могу обновить NodeJS и NPM до следующих версий? - PullRequest
1507 голосов
/ 04 июня 2011

Я только что установил Node.js и npm (для дополнительных модулей).

Как я могу обновить Node.js и модули, которые я использую, до последних версий?

Может ли npm сделать это, или мне нужно удалить и переустановить Node.js и npm, чтобы получить следующие версии?

Я следовал этим шагам в разделе npm.

Ответы [ 45 ]

8 голосов
/ 30 ноября 2015

Просто с этим кодом

npm install update
8 голосов
/ 14 февраля 2019

Я думаю, что лучший способ управлять node.js - это использовать NVM . NVM означает Node Version Manager.

Это обязательный инструмент для разработчиков node.js!

Вы можете установить NVM с помощью следующей команды, открыть терминал и запустить любое из следующего: -

curl -o- https://raw.githubusercontent.com/creationix/nvm/v0.34.0/install.sh | bash

или

wget -qO- https://raw.githubusercontent.com/creationix/nvm/v0.34.0/install.sh | bash

После установки рекомендуется закрыть текущий терминал и открыть новый, поскольку NVM будет добавлять некоторые переменные окружения, поэтому необходимо перезапустить терминал.

I 'Перечислю некоторые основные команды для использования NVM.

  • Это позволит получить все версии узлов из Интернета.Будут показаны все версии узла с начала до даты. Также будут указаны версии LTS.
nvm ls-remote 
  • Будет установлена ​​нужная версия узла (список версий получен с использованиемкоманда выше)
nvm install v10.15.1
  • Эта команда выдаст нам список версий узлов, которые установлены локально
nvm ls
  • Эта командаиспользуется для удаления нужной версии узла с вашего компьютера
nvm uninstall v10.15.1
  • Следующая команда поможет вам обновить до последней рабочей npm в текущей версии узла
nvm install-latest-npm
  • NVM может использоваться для одновременного управления несколькими версиями узлов
  • Он также может помочь вам установить все глобальные пакеты npm из одной версии в другую вместо ручной установки каждого из них.один из них!
  • Существует множество других применений nvm, подробности которых и команды можно найти здесь Диспетчер версий узлов
7 голосов
/ 05 сентября 2018

Когда дело доходит до Linux Я предлагаю Узел обновления с помощью диспетчера пакетов:

Node поставляется с предварительно установленным npm, но менеджер обновляется чаще, чем Node. Запустите npm -v, чтобы увидеть, какая у вас версия, затем npm install npm@latest -g, чтобы установить новейшее обновление npm. Запустите npm -v еще раз, если хотите убедиться, что npm обновлен правильно.

Чтобы обновить NodeJS, вам понадобится удобный модуль npm. Запустите этот код, чтобы очистить кэш npm, установите n и установите последнюю стабильную версию Node:

sudo npm cache clean -f
sudo npm install -g n
sudo n stable

Чтобы установить последнюю версию, используйте n latest. Кроме того, вы можете запустить n #. #. #, Чтобы получить конкретную Node версию.


Когда дело доходит до Windows/ macOS Я предлагаю использовать Установщики на Nodejs.org

Страница загрузок Node.js содержит бинарные пакеты для Windows и macOS - но зачем делать вашу жизнь сложнее? Готовые установщики - .msi для Windows и .pkg для macOS - делают процесс установки невероятно эффективным и понятным. Загрузите и запустите файл, и пусть мастер установки позаботится обо всем остальном. С каждым загруженным обновлением более новые версии Node и npm заменяют старую версию.

В качестве альтернативы пользователи macOS могут использовать приведенные выше инструкции npm и n.


Когда дело доходит до обновления папки node_modules зависимостей, я предлагаю пропустить все вещи, которые могут вызвать у вас головную боль, и просто перейти к вашему конкретному проекту и снова запустить npm install.

Прежде чем кто-либо сделает это, я советую сначала проверить ваш файл package.json на следующее:

Как пользователь пакетов NodeJS, вы можете указать, какие обновления может принимать ваше приложение в файле package.json. Например, если вы начинали работу с версией пакета 1.0.4, вы можете указать допустимые диапазоны версий обновления тремя основными способами:

Разрешить Патч Релизы: 1.0 или 1.0.x или ~ 1.0.4
Разрешить Незначительные Выпуски: 1 или 1.x или ^ 1.0.4
Разрешить Major Выпуски: * или x

Пояснение:

MAJOR версия для случаев несовместимых изменений API. -> ~

MINOR версия для случая, когда функциональность добавлена ​​в обратно совместимом виде. -> ^

PATCH версия для случаев, когда сделаны обратно совместимые исправления ошибок. -> *

6 голосов
/ 19 августа 2016

Для Cygwin пользователей:

Установка n (менеджер версий узлов) в Cygwin не работает, вместо этого обновите узел с помощью:

wget https://nodejs.org/download/release/latest/win-x64/node.exe -OutFile 'C:\pathto\nodejs\node.exe'
# Updating npm
npm i -g npm

Да, сначала нужно установить wget.

6 голосов
/ 08 мая 2018

для nodejs следует удалить его и загрузить любимую версию с nodejs.org для npm, запустив строку ниже в cmd:

npm i npm
5 голосов
/ 13 октября 2017

Используйте n модуль из npm для обновления узла.n является вспомогательным пакетом узла, который устанавливает или обновляет данную версию node.js.

sudo npm cache clean -f
sudo npm install -g n
sudo n stable
sudo ln -sf /usr/local/n/versions/node/<VERSION>/bin/node /usr/bin/nodejs

Обратите внимание, что установка по умолчанию для nodejs находится в / usr / bin / nodejs, а не в / usr / bin / node

Для обновления до последней версии (а не текущей стабильной) вы можете использовать

sudo n latest

Чтобы отменить:

sudo apt-get install --reinstall nodejs-legacy     # fix /usr/bin/node
sudo n rm 6.0.0     # replace number with version of Node that was installed
sudo npm uninstall -g n

Есливы получите следующую ошибку bash: /usr/bin/node: No such file or directory, затем путь, который вы ввели в

sudo ln -sf /usr/local/n/versions/node/<VERSION>/bin/node /usr/bin/nodejs

, если ошиблись.поэтому не забудьте проверить, установлен ли узел обновленияj по указанному выше пути и верна ли введенная вами версия.

Я бы настоятельно рекомендовал категорически против делать это на продукции.экземпляр .Это может серьезно испортить ваши глобальные пакеты npm и вашу возможность установить новый.

5 голосов
/ 03 января 2019

Предупреждение: если вам нужно обновить Node со старой версии (в моем случае v4.6.0), лучше переустановить nodejs с нуля (ссылка для скачивания: https://nodejs.org), иначе npm также обновится до версия, которая не совместима с новым узлом (см. это обсуждение ).

Это сообщение об ошибке, которое я получил после обновления узла (в Windows) с помощью npm

$ npm install -g npm stable
[ . . .]
$ npm 
C:\Users\me\AppData\Roaming\npm\node_modules\npm\bin\npm-cli.js:85
      let notifier = require('update-notifier')({pkg})
      ^^^

SyntaxError: Block-scoped declarations (let, const, function, class) not yet supporte
d outside strict mode
    at exports.runInThisContext (vm.js:53:16)
    at Module._compile (module.js:373:25)
    at Object.Module._extensions..js (module.js:416:10)
    at Module.load (module.js:343:32)
    at Function.Module._load (module.js:300:12)
    at Function.Module.runMain (module.js:441:10)
    at startup (node.js:139:18)
    at node.js:974:3

После новой установки npm снова работает:

$ npm -v
6.5.0
$ node -v
v10.15.0
5 голосов
/ 29 марта 2016

Также, если вы хотите выполнить обновление до определенной версии, выполните следующие действия:

sudo npm cache clean -f
sudo npm install -g n
sudo n <specific version>
4 голосов
/ 05 марта 2019

Я нашел один плагин, который может помочь обновить все пакеты npm.

Во-первых, вам нужно установить плагин npm-check-updates. Вот ссылка npm-check-updates

npm i -g npm-check-updates

Так что эта утилита установлена ​​глобально, вы можете вызвать ее, просто написав следующее.

1) ncu -u Здесь ncu - проверка обновлений npm.

2) npm install

Итак, с помощью этих двух команд вы можете легко обновить пакеты npm. Надеюсь, это поможет вам легко обновлять пакеты.

4 голосов
/ 26 августа 2017

Просто запустите приведенные ниже сценарии на консоли:

sudo npm i -g n
sudo n stable
sudo npm update -g npm

Это будет работать только для Linux и MAC

...