Установка NodeJS с помощю менеджера контроля версий FNM:
Это самый простой и правильный способ установки, который приведен на самом сайте Node и вот тут об этом так прямо и сказано: https://nodejs.org/en/download/package-manager/#fnm
Основная суть менеджера FNM как обычно у менеджеров - “разруливать” - а именно возможность иметь на борту несколько релизов NodeJS и быстро переключаться между ними. Менеджер работает быстро и просто. Кроме того он может использовать файлы .node-version
или .nvmrc
для автоматизации установки и использования. Для этого просто запиши номер нужной версии node в файл .node-version
и помести его в папку проекта и например в личную директорию. Переключаясь между папками используй команду fnm use
Как просто создать файл .node-version
в терминале используя команду cat
:
Перейти в нужную папку, например в личную командой cd ~
и ввести команду cat > .node-version
, далее нужно ввести номер устанавливаемой версии node, например: 14.18.0 и Enter. Далее чтобы закрыть и записать эти данные в файл надо нажать Ctrl-D
. Посмотреть что получилось можно командой: cat .node-version
или vim .node-version
команда cat
в linux может вывести содержимое файла на экран и обратно, связать файлы и т.д., а vim крутой встроенный редактор linux.
Чтобы установить fnm нам понадобится утилита curl
и unzip
. Кроме того возможно касперский потребут разрешить запуск curl. В новейших системах Ubuntu curl и unzip должны идти в комплекте самой ситемы, а может вы уже устанавливали сами, и если нет то устанавливаем.
Для установки curl выполните команды:
sudo apt update
sudo apt -y install ruby ruby-dev gcc make g++ curl
sudo apt install unzip
После завершения установки curl и unzip можно установить менеджер FNM:
curl -fsSL [https://fnm.vercel.app/install](https://fnm.vercel.app/install) | bash
Эта же команда осуществляет обновление уже установленного FNM.
Номер последней версии можно узнать на сайте FNM: https://github.com/Schniz/fnm На 20.12.2021 последняя верся fnm 1.28.2 и там же подробный мануал по использованию
Этот скрипт также должен для использования FNM записать в файл настройки bash ".bashrc" небольшой код. Если это не произошло делаем в ручную с командой:
eval "$(fnm env)"
После установки fnm для глобальной установки пакетов не надо использовать команду sudo так как менеджер устанавливает пакеты глобально для каждой версии node
Подробноси можно найти по ссылке: https://github.com/Schniz/fnm/blob/master/docs/commands.md
- Сначала проверяем установку FNM - это команда проверки версии fnm:
fnm -V
илиfnm --version
или файл справкиfnm -h
- Затем смотрим ****список доступных к установке версий Nodejs и выбираем номер релиза:
fnm ls-remote
илиfnm list-remote
- Список уже установленных версий вы можете посмотреть выполнив:
fnm list
илиfnm ls
- Cкачать, скомпилировать и установить релиз node из файла .node-version:
fnm install
- При установке также можно например указать конкретную версию nodejs:
fnm install 14.18.0
- Или установить версию lts nodejs:
fnm install --lts
Если файл с точкой .node-version присутствует в текущей папке то можно включить версию node указанную в файле командой: fnm use
Можно прямо указать какой использовать номер установленного ранее релиза:
fnm use 14.18.0
Но лучше сразу установить версию node которая будет использоваться глобально по умолчанию и не париться с переключением:
fnm use 14.18.0 default
Удалить установленную ранее версию node:
fnm uninstall 14.18.0
Кстати, надо помнить что при удалении любой версии nodejs, вместе с ней удаляются и все пакеты установленные глобально для этой версии.
Node Js - это платформа на основе JavaScript, которая уже завоевала большую популярность и становится еще более легкой и эффективной для разработчиков. Она позволяет программистам использовать JavaScript как для веб-приложений и пользовательских интерфейсов, так и для обычных программ, благодаря движку V8 от Google. Для платформы уже создано более чем 100000 пакетов, которыми можно управлять с помощью менеджера пакетов Node или NPM. Это отличная система для расширяемости приложения с помощью решений с открытым исходным кодом.
Посмотреть текущую установленую версию nodejs можно выполнив команду:
node -v
Для того чтобы получить подобный список пакетов, установленных глобально, можно воспользоваться следующей командой:
npm list -g
Вывести только сведения о локальных пакетах верхнего уровня (то есть, тех, которые вы устанавливали самостоятельно и которые перечислены в package.json) можно так:
npm list --depth=0
Глобальные пакеты:
npm list -g --depth=0
Для того чтобы узнать версию конкретного пакета, воспользуйтесь следующей командой:
npm list [package_name]
Если вы хотите узнать о том, каков номер самой свежей версии некоего пакета, доступного в npm-репозитории, вам понадобится команда следующего вида:
npm view [package_name] version
Установка старой версии npm-пакета может понадобиться для решения проблем совместимости. Установить нужную версию пакета из npm можно, воспользовавшись следующей конструкцией:
npm install <package>@<version>
Если, например, выходит новая минорная версия пакета и мы выполняем команду npm update
, то обновляется установленная версия пакета и при этом сведения об установленном пакете обновляются в файле package-lock.json, а файл package.json остаётся неизменным.
Для того чтобы узнать, вышли ли новые версии используемых в проекте пакетов, можно воспользоваться следующей командой:
npm outdated
Некоторые из доступных обновлений пакетов представляют собой их мажорные релизы, обновления до которых не произойдёт при выполнении команды npm update
. Обновление до мажорных релизов этой командой не производится, так как они (по определению) могут содержать серьёзные изменения, не отличающиеся обратной совместимостью с предыдущими мажорными релизами, а npm стремится избавить разработчика от проблем, которые может вызвать использование подобных пакетов.
Для того чтобы обновиться до новых мажорных версий всех используемых пакетов, глобально установите пакет npm-check-updates:
npm install -g npm-check-updates
Затем надо запустить пакет командой: ncu
в каталоге с установленным пакетом, программа просканирует файл package.json и укажет какие есть обновления. Для автоматического обновления до указанных версий пакетов введите команду ncu -u.
Эта команда обновит файл package.json, внеся изменения в указания о подходящих версиях пакетов в разделы dependencies и devDependencies.
Это позволит npm обновить пакеты, используемые в проекте, до новых мажорных версий после запуска команды npm update
.
Если надо установить самые свежие версии пакетов для только что только что загруженного проекта, в котором пока нет папки node_modules, то, вместо npm update
, выполните команду npm install
.
Команда ncu -g
поможет понять какие пакеты установленные глобально имеют обновления. И, кстати, не удивляетесь что когда установлен node lts
релиз, ncu все время пытается вам донести о том, что надо обновить npm. Слава богу, ncu глобально не обновляет версии пакетов.
Для того чтобы деинсталлировать пакет, ранее установленный локально (с использованием команды install ), выполните команду следующего вида:
npm uninstall <package-name>
Если пакет установлен глобально, то для его удаления нужно будет воспользоваться флагом -g (--global). Например, подобная команда может выглядеть так:
npm uninstall -g webpack
При выполнении последней команды текущая папка значения не имеет.