Як перейти на більш стару версію Node.js


427

Я запускаю версію Node.js v0.5.9-preна Ubuntu 10.10.

Я хотів би використовувати версію v0.5.0-pre.

Як мені повернутись до старшої версії вузла?


Я розумію, що це давнє запитання, але якщо хтось використовує домашню мову , ознайомтеся з цим питанням: stackoverflow.com/questions/3987683/…
blong

Якщо ви хочете просто протестувати свій пакет у більш старій версії, варто згадати той nodeпакет, який ви можете встановити як локальний виконуваний файл. Наприклад, v12.1: npm i --no-save node@12.1. Ви можете запустити її в поточній теці, як ./node_modules/node/bin/node .. Мінус полягає в тому, що ви не можете / не повинні встановлювати його в усьому світі.
geekley

Відповіді:


478

Один із способів - використовувати NVM, диспетчер версій вузла.

Для отримання nvm використовуйте наступну команду

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

Ви можете знайти його за адресою https://github.com/creationix/nvm

Це дозволяє легко встановлювати та керувати кількома версіями вузла. Ось фрагмент довідки:

Usage:
nvm install <version>       Download and install a <version>
nvm use <version>           Modify PATH to use <version>
nvm ls                      List versions (installed versions are blue)

2
Після того, як сервер перезапуститься, він скасовує nvm, і я повинен сказати йому, щоб знову почати використовувати певну версію. Навіть після встановлення nvm alias default v0.5.0Ви дізнаєтесь, як змусити його підтримувати налаштування після перезавантаження?
JD Isaacks

3
Це я і зробив - із документів: "Щоб активувати nvm, вам потрібно вивести його з вашої bash shell. ~ / .Nvm / nvm.sh Я завжди додаю цей рядок до мого файлу ~ / .bashrc або ~ / .profile щоб він автоматично виводив джерела при вході в систему. Часто я також розміщую рядок для використання конкретної версії вузла. "
David EGP

2
ця для мене не працювала. Завжди шви повинні бути в одній версії. github.com/tj/n працював для мене краще, простіше.
Педро Луз

1
Також ви можете мати .nvmrcфайл у каталозі з описом версії, яку ви хочете використовувати. А потім просто зробіть nvm useі нічого не піклуйтесь
Сергій Панфілов

1
Я багато пробував nvm і виявив, що це не дуже інтуїтивно. Щойно спробував * NIX нижче, і одразу вдалося встановити та переключити версії без помилок.
Девід Родерік

514

* NIX (Linux, OS X, ...)

Використовуйте n , надзвичайно простий менеджер версій вузла, який можна встановити через npm.

Скажіть, що ви хочете, щоб Node.js v0.10.x створив Atom .

npm install -g n   # Install n globally
n 0.10.33          # Install and use v0.10.33
Usage:
n                            # Output versions installed
n latest                     # Install or activate the latest node release
n stable                     # Install or activate the latest stable node release
n <version>                  # Install node <version>
n use <version> [args ...]   # Execute node <version> with [args ...]
n bin <version>              # Output bin path for <version>
n rm <version ...>           # Remove the given version(s)
n --latest                   # Output the latest node version available
n --stable                   # Output the latest stable node version available
n ls                         # Output the versions of node available

 

Windows

Використовуйте nvm-windows , це як nvm, але для Windows. Завантажте та запустіть інсталятор , потім:

nvm install v0.10.33         # Install v0.10.33
nvm use v0.10.33             # Use v0.10.33
Usage:
nvm install [version]        # Download and install [version]
nvm uninstall [version]      # Uninstall [version]
nvm use [version]            # Switch to use [version]
nvm list                     # List installed versions

7
так, не щастить Windows. Я встановив nvmw за допомогою npm, і він зробив цю роботу! > npm install -g nvmw
Гюго Сільва

4
nvmw більше не підтримується
Джо Ллойд

4
n use vesionНеможливо змінити версію вузла у всьому світі. Просто одноразово змінився.
Дай Кайсян

3
Цю відповідь слід відредагувати, щоб видалити частину Windows, nvmw більше не підтримується. Будь-яка спроба використовувати його в Windows 10 дає "ПОМИЛКА. Система не змогла знайти вказаний ключ або значення реєстру."
ohsully

1
Не вийшло з коробки на Ubuntu. n 9.6.0стверджує, що встановлено 9.6.0, але node -vвсе ще показує 9.6.1.
Дан Даскалеску

71

Навіщо використовувати будь-яке розширення, коли це можна зробити без розширення :)

Встановіть конкретну версію вузла

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

Конкретна версія: sudo n 4.4.4замістьsudo n stable


11
Мабуть n, не підтримується у Windows.
jfriend00

У ubuntu вводиться така помилка: npm ЗАПЕРЕДЖУЙТЕ за допомогою --force Я впевнений, що ви знаєте, що ви робите.
Харлан Чен

1
@HarlanChen Це не помилка. Це попередження. Ви можете проігнорувати це.
Панкай

2
Це не nрозширення? Коли ви npm install -g nвстановлюєте розширення ...
Aljosha Novakovic

pls ігноруйте sudoчастину. не варто цього робити
kreig303

55

Windows:

Щоб погіршити свій вузол.

npm install node@<version>
 ex: npm install node@8.10.0

Щоб понизити об / хв.

npm install -g npm@<version>
 ex: npm install -g npm@3.10.10

Зауважте, закрийте всі вікна, де працює вузол. Веб-переглядач, редактор тощо.

Спочатку потрібно встановити вузол. І якщо ви вже встановили, ви також можете зменшити версію вузла та npm, просто запустіть наведені вище команди. Якщо вам все-таки не пощастило і не вдалося оновити вузол. Спробуйте це. Спробуйте встановити вузол по всьому світу. колишній:

npm install -g node@8.10.0

Інша річ, яку слід врахувати тут, це спробувати оновити npm, якщо ви шукаєте останню версію npm. Біжи

npm install npm@latest -g

МАК

Примітка: для mac ці самі команди повинні працювати. Сподіваюся, це вирішиться.


19
Розчаровуючи, це не змінює мою версію вузла.
Амос Лонг

3
Я спробував такий підхід, і це не спрацювало. Робота полягала в тому, щоб видалити пакет вузлів зі снаппіну "додати або видалити програми". Потім завантажте потрібну версію з веб-сайту вузла.
Альберто С.

Я перебуваю на комп'ютері, і в моєму випадку мені не потрібно було додавати sudo, тому просто набирати текст npm install -g node@8.12.0добре працював
Giorgio Tempesta

1
Дуже дякую! Цей підхід допомагає встановити node@10.17.0 до мого проекту, а потім дозволити мені встановити Realm@3.4.0. До цього я повторно спробував багато різних підходів, але все-таки не зміг встановити останню Realm у своїй Windows для мого проекту React-Native.
garykwwong

12

Windows

Пониження вузла з Chocolately

Встановіть Chocolatey. Потім запустіть:

choco install nodejs.install -version 6.3.0

У Chocolatey є безліч версій Node .

Пониження рівня NPM

npm install -g npm@3.10.3

а для linux? :)

@ noob-fella Можливо, це доступно через apt-get; Я цього не пробував.
Shaun Luttin

чи можете ви переходити між різними версіями Node.js на ходу за допомогою Chocolately?
Бенні Нойгебауер

12

найпростіший спосіб, який я знайшов, - це просто використовувати сайт nodejs.org :

  1. перейдіть на сторінку https://nodejs.org/en/download/releases/
  2. знайдіть потрібну версію та натисніть скачати
  3. на Mac натисніть виконуваний файл .pkg та дотримуйтесь інструкцій із встановлення (не впевнений, що правильний виконуваний файл для Windows)
  4. будьте щасливі зараз, коли ви знаходитесь у потрібній версії вузла

1
На сьогодні найпростіший варіант!
Містер Вашингтон

2
в Windows: msi не знизить версію вузла. Це просто просто виходить.
Бернар

9

nvmw більше не підтримується, але я знайшов інше джерело, яке, здається, є сучасним (станом на 1/4/17).

nvm-windows

Це працює. Дозволено перейти до версії 6.3.1


8

Офіційний шлях (Ubuntu)

Якщо ви перебуваєте у вузлі 12 і хочете перейти до рівня 10, просто видаліть вузол та дотримуйтесь інструкцій для потрібної версії:

# Remove the version that is currently installed
sudo apt remove -y nodejs

# Setup sources for the version you want
curl -sL https://deb.nodesource.com/setup_10.x | sudo -E bash -

# (Re-)Install Node
sudo apt-get install -y nodejs

Windows

Мені здалося, що я хочу перейти на LTS в Windows з кровоточивого краю. Якщо ви не використовуєте менеджер пакунків, як Chocolatey або менеджер версій вузла, як nvm чи n, просто завантажте .msiпотрібну версію та встановіть її. Ви можете видалити встановлену в даний час версію за допомогою інструменту "Додати або видалити програми" в Windows.

Шоколад

Я настійно рекомендую шоколад для легкого оновлення установок, і це звичайний спосіб встановити Node.js на Windows. До встановлення версії LTS мені довелося видалити крайову версію:

choco uninstall nodejs

choco install nodejs-lts

З package.json

Забезпечує користування вашою програмою правильної версії

Ви можете додати nodeяк залежність у package.jsonта контролювати, яка версія використовується для певного проекту. Після виконання package.json"скрипту", npmyarn) буде використовувати цю версію для запуску сценарію замість глобально встановленого Node.js.

nodeПакет вирішує цю задачу шляхом завантаження nodeбінарного файлу в локальній системі і поміщає його в node_modules/.binкаталог.


Менеджер версій вузла

Хоча деякі розробники не дуже портативні, люблять вручну перемикати, яка глобальна версія вузла активна в будь-який момент часу. Є два популярні пакети npm, які надають корисні інтерфейси CLI для вибору (та автоматичної установки) тієї версії, яку ви бажаєте для вашої системи: nvmта n. Використання будь-якого виходить за межі цієї відповіді.



5

У Windows 7 я використав загальний 'Uninstall Node.js' (щойно почав набирати текст у нижньому лівому куті пошуку, поле головного меню) з наступним натисканням посилання на старішу версію, яка відповідає проекту, наприклад: Windows 64-розрядний інсталятор : https://nodejs.org/dist/v4.4.6/node-v4.4.6-x64.msi


4

У мене була версія версії 6.4.0.

Оскільки мені потрібна стара версія 6.3.0, я щойно встановив версію 6.3.0 знову в своїй системі. Версія вузла автоматично знижується.

Отже, для зменшення версії вузла просто встановіть старішу версію node js. Вона буде автоматично знижена з вищої версії.

Я спробував в osx. Це працює як шарм.


1

Чомусь Brew встановлює вузол 5 в окремий каталог під назвою node5.

Кроки, які я вжив, щоб повернутися до версії 5:

  1. Встановіть node5 за допомогою стандартної установки Brew, але поки не заварюйте посилання.
  2. Видаліть усі інші версії вузла, використовуючи вузол відключення заварювання і заваріть видалення вузла. Можливо, вам знадобиться --force для видалення однієї з версій.
  3. Знайдіть папку льоху на своєму комп’ютері
  4. Видаліть папку вузлів у льоху.
  5. Перейменуйте папку node5 на вузол.
  6. Потім заваріть вузол посилання

Вам слід встановити всі вузли 5.


1

запустіть це:

rm -rf node_modules && npm cache clear && npm install

Вузол встановиться з усього кешованого. Тож якщо ви очистите все спочатку, то NPM використовувати 0.10.xx, воно відновиться належним чином.

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.