Cách thay đổi thành phiên bản cũ hơn của Node.js


426

Tôi đang chạy phiên bản Node.js v0.5.9-pretrên Ubuntu 10.10.

Tôi muốn được sử dụng phiên bản v0.5.0-pre.

Làm cách nào để quay lại phiên bản cũ hơn của nút?


Tôi nhận ra đây là một câu hỏi cũ, nhưng nếu có ai đang sử dụng homebrew , hãy xem câu hỏi này: stackoverflow.com/questions/3987683/
Kẻ

Nếu bạn muốn kiểm tra gói của mình ở phiên bản cũ hơn, bạn nên đề cập đến nodegói mà bạn có thể cài đặt dưới dạng thực thi cục bộ. Ví dụ: v12.1 : npm i --no-save node@12.1. Bạn có thể chạy nó trên thư mục hiện tại như thế nào ./node_modules/node/bin/node .. Nhược điểm là bạn không thể / không nên cài đặt nó trên toàn cầu.
geekley

Câu trả lời:


478

Một cách là sử dụng NVM, Trình quản lý phiên bản nút.

Sử dụng lệnh sau để nhận nvm

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

Bạn có thể tìm thấy nó tại https://github.com/creationix/nvm

Nó cho phép bạn dễ dàng cài đặt và quản lý nhiều phiên bản của nút. Đây là một đoạn trích từ trợ giúp:

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
Sau khi máy chủ khởi động lại, nó hủy cài đặt nvm và tôi phải bảo nó bắt đầu sử dụng lại một phiên bản cụ thể. Ngay cả sau khi cài đặt, nvm alias default v0.5.0bạn có biết làm thế nào để duy trì cài đặt sau khi khởi động lại không?
JD Isaacks

3
Đây là những gì tôi đã làm - từ các tài liệu: "Để kích hoạt nvm, bạn cần lấy nguồn từ shell bash của mình. ~ / .Nvm / nvm.sh Tôi luôn thêm dòng này vào tệp ~ / .bashrc hoặc ~ / .profile của tôi để có nguồn tự động khi đăng nhập. Thường thì tôi cũng đặt một dòng để sử dụng một phiên bản nút cụ thể. "
David EGP

2
cái này không làm việc cho tôi Luôn luôn đường may để được trên cùng một phiên bản. github.com/tj/n làm việc tốt hơn cho tôi, đơn giản hơn.
Pedro Luz

1
Ngoài ra, bạn có thể có .nvmrctập tin trong thư mục với mô tả về phiên bản bạn muốn sử dụng. Và sau đó chỉ cần thực hiện nvm usevà không quan tâm đến bất cứ điều gì
Sergei Panfilov

1
Tôi đã thử nvm rất nhiều và thấy nó không trực quan lắm. Chỉ cần thử * NIX bên dưới và ngay lập tức có thể cài đặt và chuyển đổi các phiên bản mà không gặp lỗi.
David Rhoderick

513

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

Sử dụng n , trình quản lý phiên bản Node cực kỳ đơn giản có thể được cài đặt qua npm.

Giả sử bạn muốn Node.js v0.10.x xây dựng 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

 

các cửa sổ

Sử dụng nvm-windows , nó giống như nvm nhưng dành cho Windows. Tải xuống và chạy trình cài đặt , sau đó:

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
vâng, không có may mắn trên Windows. Tôi đã cài đặt nvmw bằng cách sử dụng npm và nó đã thực hiện công việc! > npm install -g nvmw
Hugo Silva

4
nvmw không còn được duy trì
Joe Lloyd

4
n use vesionKhông thể thay đổi phiên bản nút trên toàn cầu. Chỉ cần thay đổi một lần.
Đại Kaixian

3
Câu trả lời này nên được chỉnh sửa để loại bỏ phần Windows, nvmw không còn được hỗ trợ. Mọi nỗ lực sử dụng nó trên Windows 10 đều mang lại "LRI: Hệ thống không thể tìm thấy khóa hoặc giá trị đăng ký được chỉ định."
ohsully

1
Không hoạt động ngoài hộp trên Ubuntu. n 9.6.0tuyên bố nó đã cài đặt 9.6.0 nhưng node -vvẫn hiển thị 9.6.1.
Dan Dascalescu

71

Tại sao sử dụng bất kỳ tiện ích mở rộng nào khi bạn có thể làm điều này mà không cần gia hạn :)

Cài đặt phiên bản cụ thể của nút

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

Phiên bản cụ thể: sudo n 4.4.4thay vìsudo n stable


11
Rõ ràng nlà không được hỗ trợ trên windows.
jfriend00

trên Ubuntu, lỗi sau đây được đưa ra: npm WARN bằng cách sử dụng - Force Tôi chắc chắn hy vọng bạn biết bạn đang làm gì.
Harlan Chen

1
@HarlanChen Đây không phải là lỗi. Đó là một cảnh báo. Bạn có thể bỏ qua nó.
Pankaj

2
Không phải là nmột phần mở rộng? Khi bạn làm, npm install -g nbạn đang cài đặt một tiện ích mở rộng ...
Aljosha Novakovic

xin vui lòng bỏ qua sudophần. bạn không nên làm điều này
kreig303

55

Các cửa sổ:

Để hạ cấp nút của bạn.

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

Để hạ cấp npm của bạn.

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

Lưu ý đóng tất cả các cửa sổ của bạn nơi nút đang chạy. Trình duyệt, biên tập, v.v.

Bạn cần cài đặt nút đầu tiên. Và nếu bạn đã cài đặt, bạn có thể hạ cấp phiên bản của nút và npm cũng chỉ cần chạy các lệnh trên. Nếu bạn vẫn không gặp may và không cập nhật nút thành công. Thử cái này. Hãy thử cài đặt nút trên toàn cầu. Ví dụ:

npm install -g node@8.10.0

Một điều khác cần xem xét ở đây là thử cập nhật npm nếu bạn đang tìm kiếm phiên bản mới nhất của npm. Chạy

npm install npm@latest -g

MAC

Lưu ý: đối với mac, các lệnh tương tự sẽ hoạt động. Hy vọng điều này giải quyết.


19
Thật khó chịu, điều này không thay đổi phiên bản nút của tôi.
Amos Long

3
Tôi đã thử phương pháp này và nó không hoạt động. Những gì đã làm là gỡ cài đặt gói nút từ snappin "thêm hoặc loại bỏ chương trình". Sau đó, tải xuống phiên bản mong muốn từ trang web nút.
Alberto S.

Tôi đang dùng mac và trong trường hợp của tôi, tôi không cần thêm sudo, vì vậy chỉ cần gõ npm install -g node@8.12.0hoạt động tốt
Giorgio Tempesta

1
Cảm ơn rất nhiều! Cách tiếp cận này giúp cài đặt node@10.17.0 cho dự án của tôi và sau đó cho phép tôi thành công khi cài đặt Realm@3.4.0. Trước đó, tôi đã thử lại nhiều cách tiếp cận khác nhau nhưng vẫn thất bại trong việc cài đặt Realm mới nhất trên Windows cho dự án React-Native của tôi.
garykwwong

12

các cửa sổ

Node hạ cấp với Sôcôla

Cài đặt Chocolatey. Sau đó chạy:

choco install nodejs.install -version 6.3.0

Chocolatey có rất nhiều phiên bản Node có sẵn .

Hạ cấp NPM

npm install -g npm@3.10.3

và cho linux? :)

@ noob-fella Có lẽ nó có sẵn thông qua apt-get; Tôi chưa thử.
Shaun Luttin

bạn có thể chuyển đổi giữa các phiên bản Node.js khác nhau đang hoạt động với Sôcôla không?
Benny Neugebauer

12

cách dễ nhất tôi đã tìm thấy là chỉ sử dụng trang web nodejs.org :

  1. truy cập https://nodejs.org/en/doad/release/
  2. tìm phiên bản bạn muốn và nhấp vào tải xuống
  3. trên mac, nhấp vào .pkg thực thi và làm theo hướng dẫn cài đặt (không chắc thực thi chính xác là gì cho windows)
  4. vui vì bây giờ bạn đang ở phiên bản của nút bạn muốn

1
Cho đến nay các tùy chọn đơn giản nhất!
Ông Washington

2
trên Windows: msi sẽ không hạ cấp phiên bản nút. Nó chỉ là lối thoát đơn giản.
Bernard

9

nvmw không còn được duy trì, nhưng tôi đã tìm thấy một nguồn khác dường như được cập nhật (kể từ 1/4/17).

cửa sổ nvm

Nó hoạt động. Cho phép tôi hạ cấp xuống 6.3.1


8

Cách chính thức (Ubuntu)

Nếu bạn đang ở nút 12 và muốn hạ cấp xuống nút 10, chỉ cần xóa nút và làm theo hướng dẫn cho phiên bản mong muốn:

# 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

các cửa sổ

Tôi thấy mình muốn hạ cấp xuống LTS trên Windows từ góc cạnh chảy máu. Nếu bạn không sử dụng trình quản lý gói như Chocolatey hoặc trình quản lý phiên bản nút như nvm hoặc n, chỉ cần tải xuống .msiphiên bản bạn muốn và cài đặt nó. Bạn có thể muốn xóa phiên bản hiện được cài đặt thông qua công cụ "Thêm hoặc xóa chương trình" trong Windows.

Sô cô la

Tôi đặc biệt khuyên dùng chocolatey để giữ cho các cài đặt cập nhật dễ dàng và đó là cách phổ biến để cài đặt Node.js trên Windows. Tôi đã phải gỡ bỏ phiên bản cạnh chảy máu trước khi cài đặt phiên bản LTS:

choco uninstall nodejs

choco install nodejs-lts

Với package.json

Đảm bảo người dùng chương trình của bạn sử dụng đúng phiên bản

Bạn có thể thêm nodenhư một phụ thuộc package.jsonvà kiểm soát phiên bản nào được sử dụng cho một dự án cụ thể. Khi thực thi package.json"tập lệnh", npm(và yarn) sẽ sử dụng phiên bản đó để chạy tập lệnh thay vì Node.js được cài đặt toàn cầu.

Các nodegói hoàn thành điều này bằng cách tải về một nodenhị phân cho hệ thống địa phương của bạn và đặt nó vào trong node_modules/.binthư mục.


Trình quản lý phiên bản nút

Mặc dù không dễ mang theo, một số nhà phát triển thích chuyển đổi thủ công phiên bản nút toàn cầu nào đang hoạt động tại bất kỳ thời điểm nào. Có hai gói npm phổ biến cung cấp giao diện CLI hữu ích để chọn (và tự động cài đặt) bất kỳ phiên bản nào bạn muốn cho hệ thống của mình: nvmn. Sử dụng một trong hai là vượt quá phạm vi của câu trả lời này.



5

Trên windows 7, tôi đã sử dụng chung 'Gỡ cài đặt Node.js' (chỉ bắt đầu nhập vào dưới cùng tìm kiếm bên trái, trường menu chính), sau đó nhấp vào liên kết đến phiên bản cũ hơn phù hợp với dự án, ví dụ: Trình cài đặt Windows 64 bit : https://nodejs.org/dist/v4.4.6/node-v4.4.6-x64.msi


4

Tôi đã có phiên bản nút 6.4.0.

Vì tôi cần phiên bản cũ hơn 6.3.0, tôi chỉ cần cài đặt lại phiên bản 6.3.0 trong hệ thống của mình. phiên bản nút hạ cấp tự động.

Vì vậy, để hạ cấp phiên bản nút, Chỉ cần cài đặt phiên bản cũ hơn của nút js. Nó sẽ bị hạ cấp tự động từ phiên bản cao hơn.

Tôi đã thử trong osx. Nó hoạt động như một say mê .


1

Vì một số lý do, Brew cài đặt nút 5 vào một thư mục riêng gọi là nút5.

Các bước tôi đã thực hiện để quay lại phiên bản 5 là: (Bạn sẽ cần tra cứu cài đặt / gỡ cài đặt tiêu chuẩn, nhưng nếu không thì quá trình này đơn giản hơn vẻ ngoài của nó.)

  1. Cài đặt node5 bằng cách sử dụng cài đặt tiêu chuẩn Brew, NHƯNG chưa liên kết brew.
  2. Gỡ cài đặt tất cả các phiên bản khác của nút bằng cách sử dụng nút hủy liên kết và nút gỡ cài đặt. Bạn có thể cần phải sử dụng - Force để xóa một trong các phiên bản.
  3. Tìm thư mục hầm rượu trên máy tính của bạn
  4. Xóa thư mục nút trong hầm.
  5. Đổi tên thư mục node5 thành nút.
  6. Sau đó, nút liên kết ủ

Bạn nên đặt tất cả với nút 5.


1

chạy cái này:

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

Nút sẽ cài đặt từ bất cứ thứ gì được lưu trữ. Vì vậy, nếu bạn xóa mọi thứ trước, sau đó NPM sử dụng 0.10.xx, nó sẽ hoàn nguyên đúng.

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.