Как установить nvm на windows
NVM , также известный как Node Version Manager, это аналог RVM (Ruby Version manager) для языка Ruby. NVM позволяет устанавливать и управлять множеством версий NodeJS в рамках одной системы, а также использовать определенную версию для приложения.
В этой статье я расскажу как установить и управлять NodeJS с помощью NVM .
По умолчанию NVM устанавливается в домашнюю директорию текущего пользователя. поэтому установленные версии nodejs с помощью nvm одного пользователя будут недоступны другим пользователям. Пользователи Windows могут прочитать как установить NodeJS в Windows системах.
Шаг 1 - Установка NVM
Сначала вы должны установить NVM в систему. Разработчики NVM подготовили для этого Bash скрипт-установщик. Используйте эту,чтобы установитьNVM:
После чего надо обновить системные переменные с помощью команд ниже, иначе потребуется перезапуск сеанса (или переподключение по SSH).
Шаг 2 - Список доступных версий NodeJS
Теперь, когда вы установили nvm, вы можете использовать его. Но для начала нужно установить какую-либо версию NodeJS. С помощью опции ls-remote вы можете просмотреть список доступных версий
В результате вы увидите длинный список доступных версий.
.
.
v10.16.1 (LTS: Dubnium)
v10.16.2 (LTS: Dubnium)
v10.16.3 (Latest LTS: Dubnium)
.
.
v12.10.0
v12.11.0
v12.11.1
v12.12.0
Шаг 3 - Установка NodeJS с помощью NVM
Выберите версию из списка выше, которая вам нужна и установите ее. В этом примере я буду использовать LTS версию v10.16.3 :
И дополнительно установлю актуальную версию
Повторяя команду с нужными версиями установите все необходимые вам версии NodeJS.
Шаг 4 - Установка версии по умолчанию
После того, как вы установите несколько версий, вы должны выбрать какая версия будет использоваться по умолчанию (для вариантов, когда нет четкого указания на нужную версию). С помощью команды ниже вы можете проверить список установленных версий и какая из них указана как версия по умолчанию.
-> v10.16.3
v12.8.0
system
default -> v12.8.0
node -> stable (-> v12.12.0) (default)
stable -> 12.8 (-> v12.12.0) (default)
iojs -> N/A (default)
unstable -> N/A (default)
lts/* -> lts/dubnium (-> v10.16.3)
lts/argon -> v4.9.1 (-> N/A)
lts/boron -> v6.17.1 (-> N/A)
lts/carbon -> v8.16.0 (-> N/A)
lts/dubnium -> v10.16.3
Как вы можете видеть - версией по умолчанию установлена v10.16.3. Вы можете изменить ее на другую используя следующую команду(я изменю на 10.16.2 ).
Проверим текущую версию NodeJS
Шаг 5 - Запуск приложения с определенной версией NodeJS
Когда у вас много приложений и вы хотите для каждого из них указать свою определенную версию, то вы можете использовать следующую команду nvm, к примеру запуск приложения app.js в версии 10.16.3
Шаг 6 - Удаление неиспользуемых версий NodeJS
Просмотрите список установленных версий командой
И удалите ненужные вам версии с помощью команды ниже. К примеру я удалю версию 10.16.3
Что такое Node.js?
Node.js это среда выполнения JavaScript с открытым исходным кодом, в основном используется для написания веб-серверов, сайтов или RESTful API. Его базовая функциональность поддерживается модулями которые базируются на API, спроектированом так что бы сделать написание серверных приложения легче. Node.js приложения можно запускать на разных платформах: Linux, macOS и Windows, а также они могут быть написаны на любом языке который компилируется в JavaScript, например таких как CoffeeScript, Dart и TypeScript.
Node.js похож на PHP, но существует несколько значительных различий . В PHP, функции блокирует поток выполнения пока не выполнятся, что означает что может выполнятся только одна команда подряд. В Node.js существует возможность выполнять операции IO, запросы в базу асинхронно.
Обновления версий Node.js
Новый релиз Node.js выполняется раз в полгода с master ветки в GitHub, примерно в Апреле и Октябре. Когда выходит новая версия с нечетным номером, самые новые версии с четными номерами стают long-term support (LTS). Версии до LTS получают активную поддержку на 18 месяцев, а потом ще 12 месяцев технической поддержки. В тоже время активные версии получают non-breaking бэкпорты с любыми изменениями реализованными в самой последней версии несколько недель после релиза.
Что такое Node Version Manager (NVM)?
Какие операционные системы поддерживает Node Version Manager ?
Установка NVM на OS X и Linux
Сначала, удостоверьтесь в том что утилита совместима с вашей версией операционной системы. Также технически вам не нужно удалять уже установленый Node, но лучше сделать это, кроме того, нужно удалить любые прежнюю версию npm.
C++ компилятор необходим для поддержки версий предшествующий 0.8.6. Даже если вы обычно работаете только с LTS или более современными релизами, вы все де можете установить компилятор C++. Если вы у вас OS X, ваш лучший выбор это Xcode. Чтобы установить его выполните следующую команду:
Если вы используете Linux, выполните следующую команду, чтобы установить build-essential package вместе с Advanced Package Tool:
После этого, вы можете установить Node Version Manager используя cURL или Wget. Для cURL выполните следующую команду:
Для Wget выполните следующую команду:
/.nvm и применят изменения для вашего bash профиля, так что вы сможете иметь доступ к Node Version Manager где-угодно в вашем терминале.
Установка NVM на Windows
Как использовать NVM
Есть несколько важных вещей которые нужно знать чтобы использовать NVM эффективно, ниже они будут описаны и будут приведены примеры как делать определенные задачи.
Установка разных версий Node.js
Менеджер версий делает установку разных версий Node.js очень простой с помощью одной команды. Просто запустите команду install и передайте ей параметром необходимую версию. Например, если вы хотите установить Node.js версии v6.5.0, выполните следующую команду:
Так как утилита следует SemVer, вы можете устанавливать патчи командой install с аргументом номера патча. Для получения списка доступных версий в Linux и OS X, выполните:
Если вы используете Windows, выполните следующую команду:
Если вам нужно удалить екземпляр Node, просто выполните nvm uninstall c нужным номером версии.
Глобальные npm пакеты
Стоит заметить то что глобально установленный npm пакеты не разделяются между разными версиями Node.js, потому что они могут причинить проблемы несовместимости. Поэтому, Node Version Manager одновременно устанавливает совместимую версию npm каждый раз когда вы устанавливаете какую то версию Node.js. Так как каждый экземпляр Node имеет собственную версию npm, вы можете запустить npm -v что-бы проверить какая версия сейчас используется. Также не нужно иметь sudo права при установке глобальных пакетов. Если вы хотите переустановить глобальные npm пакеты для определенной версии Node.js или при ее установке, сделайте так:
Команда выше устанавливает Node 6.5.0 и необходимую npm, потом переустанавливает все установленные пакеты в версии 4.2
Алиасы
Для установки последней стабильной версии Node.js выполните следующую команду
Также существует алиас по умолчанию. Для установки версии по умолчанию используйте такую команду
Кроме того, вы можете создавать собственные алиасы:
Для удаления алиаса, выполните команду unalias:
Переключения между версиями Node.js
Каждый раз как вы устанавливаете новую версию Node.js, она будет автоматически выбираться для использования. Для переключения между версиями используется команда, nvm use которая работает почти также как и команда install. Например если вы хотите переключиться на последнюю стабильную версию, выполните команду
Для получения списка всех установленных версий Node, используется команда nvm ls:
Активная версия будет помечена зеленым цветом и стрелочкой, также текущую версию можно получить с помощью команды:
Дополнительные команды
Преимущества использования Node Version Manager
Кроме экономии времени и усилий, возможность переключения между версиями Node имеет еще несколько значительных выгод. Например, например если вы хотите проверить работу некоторого пакета на определенной версии Node, или если вам нужно воспроизвести баг на нужной версии, NVM позволяет быстро переключиться и сделать отладку.
Заключение
Знание, как правильно использовать Node Version Manager, может помочь сохранить много времени, которое всегда ценно для разработчиков.
Версия Node.js 15 была выпущена 20 октября 2020 года. Она поставляется с npm 7 и множеством новых функций. Вы уже успели опробовать новую версию?
Но подождите минутку! Node.js 15 и npm 7 содержат критические изменения. Не повредит ли тогда обновление существующим проектам?
Теоретически может повредить!
К счастью, у нас есть NVM (Node Version Manager), который избавит нас от этой опасности. Давайте детально рассмотрим данный инструмент, чтобы без проблем обновить версии node.js и npm.
Установка NVM
nvm управляет версиями node.js и npm. Он устанавливается для конкретного пользователя и может быть вызван отдельно для каждой оболочки. nvm работает с любой POSIX-совместимой оболочкой (sh, dash, ksh, zsh, bash), в том числе на платформах: unix, macOS и windows WSL.
nvm можно установить с помощью команд curl или wget:
Скрипт install.sh клонирует репозиторий nvm в
/.nvm и пытается добавить исходные строки из приведенного ниже фрагмента в нужный файл профиля (
/.bash_profile мы видим, что строки добавлены:
Использование NVM
Итак, мы установили nvm. Теперь используем данную команду для установки последней версии node.js:
В выходных данных из примера выше указано, что npm 7.0.15 используется вместе с node.js 15.4.0 . Проверим:
Также мы можем указать нужную версию для установки. Семантический формат версии определяется SemVer:
Если указанная версия уже была установлена, она не переустанавливается:
Мы можем вывести на экран все установленные версии:
В приведенных выше примерах вывода символ -> указывает, что текущая версия node.js — 10.14.0 . Стрелка также представляет значения для default ( 12.16.0 ), node ( 15.4.0 ) и stable ( 15.4.0 ).
nvm use заменяет текущую версию:
Возможно, вы спросите, как так получилось, что v10.16.0 использует более позднюю версию npm, чем v13.9.0 . Эту задачу можно решить с помощью следующих команд:
Данная команда позволяет получить последнюю поддерживаемую версию npm для текущей версии Node.js:
nvm use устанавливает нужную версию только для текущей оболочки. Если вы измените оболочку, только что обновленная версия node.js будет потеряна.
Как сделать определенную версию Node.js постоянной?
Версия по умолчанию — такая версия, которая распространяется на все оболочки.
Команда nvm alias позволяет установить версию по умолчанию.
Для удобства можно создать файл .nvmrc , который принимает формат SemVer, node или default . После этого nvm use , nvm install , nvm exec , nvm run и nvm which будут использовать версию, указанную в файле .nvmrc , если в командной строке не указана другая.
Мы можем проверить текущую версию с помощью следующей команды:
ls-remote выводит на экран все доступные версии, но будьте готовы к очень длинному списку.
Обратим внимание, что название версии в сокращенной форме значительно сокращает весь список.
nvm which указывает путь к исполняемому файлу, где nvm был установлен. Мы установили такие версии node.js, как 10.14.0 , 10.15.0 и 10.16.0 . Вот результаты nvm which :
Указанную версию Node.js можно использовать непосредственно для запуска приложений:
Как вариант, данная команда запускает node app.js с переменной PATH, указывающей на версию 10.15.0 .
Если вам нужно больше nvm-команд, запустите команду help :
Обновление NVM
Мы можем использовать nvm для обновления node.js и npm. Но как обновить сам nvm ?
Перед обновлением у нас установлен nvm 0.34.0 .
Обновляем до версии 0.37.2.
Как указано в выводе, нам нужно закрыть и снова открыть терминал, чтобы использовать новую версию:
По сравнению с версией 0.34.0 , в версии 0.37.2 добавлена функция nvm set-colors для вывода на консоль.
Раньше я не знал, что этот nvm может управлять версией узла. Я нашел nvm, потому что мне больше нравилась версия npm, которая заставляла команды npm сообщать об ошибках.
Если вы загрузили узел перед установкой nvm, вам необходимо удалить узел! ! !
Первый шаг: скачать nvm
nvm-noinstall.zip: это зеленая бесплатная версия для установки, но ее необходимо настроить перед использованием.
nvm-setup.zip: это установочный пакет, после загрузки нажмите «Установить», его можно использовать без настройки, что удобно.
Исходный код (zip): исходный код, сжатый в zip-формате.
Код источника (tar.gz): исходный код tar.gz, обычно используемый в системе * nix.
Есть 4 варианта, просто скачайте установку, если хотите, я скачал последнюю версию 1.1.7.
Шаг 2: Установите
Разархивируйте загруженный zip-архив, сгенерируйте файл nvm-setup.exe и запустите
Настройте адрес установки:
Задайте расположение папки символических ссылок узла. Имя этой папки не должно содержать китайских и пробелов!
Выполните команду nvm, и следующее свидетельствует об успехе:
Шаг 3. Измените settings.txt
Найдите файл settings.txt в установленном вами каталоге и добавьте его после открытия
Этот шаг в основном предназначен для замены зеркала npm на зеркало Taobao. Увеличьте скорость загрузки! !
Шаг 4: используйте
Это почти готово, если вы хотите скачать версию, выполните nvm list available
Введите npm install ***, чтобы загрузить требуемую версию, затем nvm use *** в порядке и, наконец, выполните nvm list с * - это выбранная версия
Читайте также: