78

Khi tôi cài đặt nút 0.10.33 từ msi ( http://nodejs.org/doad/ ), tôi nhận được một phiên bản cũ của npm (1.4.28). Làm cách nào để nâng cấp npm trên Windows?

npm install -g npm

không hoạt động; Tôi vẫn còn npm cũ.

|
150

Bạn cần làm theo các hướng dẫn nâng cấp của Windows ( https://docs.npmjs.com/try-the-latest-urdy-version-of-npm )

tl; dr - npm -g install npm không hoạt động, nhưng phiên bản cũ của npm vẫn còn trong PATH của bạn.

Để khắc phục điều này, hãy thực hiện một trong những điều sau đây:

Tùy chọn 2: loại bỏ cả hai

C:\Program Files (x86)\nodejs\npm

C:\Program Files (x86)\nodejs\npm.cmd

Hoặc là

Tùy chọn 3: Mở cmd.exe với tư cách quản trị viên, điều hướng đến C: \ Program Files (x86) \ nodejs và sau đó chạy cài đặt mà không có -g:

npm install npm@latest

* Có gói npm tự động hóa Tùy chọn 3 này:

cài đặt npm -g npm-win-nâng cấp

|
44

Chúng tôi tại Microsoft Open Source đã viết một công cụ nhỏ để tự động hóa quy trình được nêu ở trên. Bạn có thể tìm thấy nó ở đây hoặc chỉ cần cài đặt và chạy nó bằng cách thực hiện các thao tác sau trong dấu nhắc lệnh nâng cao / PowerShell:

npm install -g npm-windows-upgrade
npm-windows-upgrade
|
  • 1

    Nó cần quyền hạn. Điều gì xảy ra nếu tôi không thể chạy các tập lệnh powershell được tải xuống từ internet và tôi không có đặc quyền để thay đổi cài đặt? Tôi cho rằng tôi cần phải tạo chứng chỉ và ký tên. Để nhiều đau đầu

    – Tạ Thu Thủy 18:46:19 08/11/2015
  • 1

    Tôi đã làm theo tất cả các bước và tất cả những gì tôi nhận được là một lỗi: PS C: \ Windows \ system32> npm-windows-nâng cấp npm-windows-nâng cấp: Thuật ngữ 'npm-windows-nâng cấp' không được công nhận là tên của một cmdlet, hàm, tệp script hoặc chương trình có thể hoạt động. Kiểm tra chính tả của tên hoặc nếu một đường dẫn được bao gồm, xác minh rằng đường dẫn đó là chính xác và thử lại. Tại dòng: 1 char: 1 + npm-windows-nâng cấp + ~~~~~~~~~~~~~~~~~~~ + CategoryInfo: ObjectNotFound: (npm-windows-Nâng cấp: Chuỗi) [], CommandNotFoundException + FullQualifiedErrorId: CommandNotFoundException

    – Hoàng Bình Ðạt 18:42:50 03/05/2016
  • 1

    Tôi đang gặp vấn đề chính xác giống như @DanCsharpster theo tất cả các bước cho Powershell với tư cách là Quản trị viên.

    – Đặng Khắc Vũ 16:19:53 09/09/2016
  • 1

    Khắc phục: Tôi đã gặp vấn đề chính xác giống như @DanCsharpster theo tất cả các bước cho Powershell với tư cách Quản trị viên, nhưng sự cố này đã được khắc phục bằng cách thêm C: \ Users \ UserAdmin \ AppData \ Roaming \ npm vào PATH của tôi, đóng lại Powershell và mở lại Quản trị viên.

    – Đỗ Hướng Bình 16:25:57 09/09/2016
  • 1

    Đã có cùng một vấn đề như Dan và Wesley. Đã có thể giải quyết nó với mẹo của Wesley ở trên.

    – Dương Hồng Phúc 21:54:58 07/03/2017
14

Có thể có nhiều cách để cập nhật npmWindows của bạn

Cách 1

  1. Mở shell sức mạnh của bạn với tư cách Quản trị viên và chạy theo các lệnh theo từng bước.
  2. Set-ExecutionPolicy Unrestricted -Scope CurrentUser -Force
  3. npm install -g npm-windows-upgrade
  4. npm-windows-upgrade
  5. Tại đây bạn có thể chọn phiên bản npm ưa thích của mình
  6. Sẵn sàng để đi !

Cách 2

  1. Bạn chỉ có thể nâng cấp lên npmphiên bản mới nhất bằng lệnh sau
  2. npm install npm@latest -g
  3. hoặc nếu bạn muốn một phiên bản cụ thể của npmchạy đơn giản
  4. npm install npm@{version} -g ví dụ npm install npm@3.3.12 -g

Bây giờ chỉ cần chạy npm --versionhoặc npm -vđể biết phiên bản hiện tại của npm

3.3.12là phiên bản ưa thích của tôi npmphù hợp nhất cho khoảng mọi gói.

|
6

Vì vậy, TL; DR; cái này hiệu quả

  1. Gỡ cài đặt nút

  2. Từ một dấu nhắc lệnh, chạy where npm

  3. Nếu bạn đã cài đặt npm qua chocolatey, bạn sẽ thấy một đường dẫn như C: \ ProgramData \ chocolatey \ bin \ npm.exe - XÓA nó!
  4. Bây giờ cài đặt NodeJS bằng cách sử dụng MSI thích hợp từ https://nodejs.org/en/doad/
  5. Trong shell yêu thích của bạn, hãy nhập npm --version- cái này bây giờ sẽ lặp lại phiên bản NPM đi kèm với NodeJS (tại thời điểm viết bài này, phiên bản đó là 3.10.10)

Đây là những gì làm việc cho tôi (ngớ ngẩn với tôi!) Tôi đã cài đặt npm qua chocolatey, nó đã tạo ra một npm.exe được khởi tạo bằng sô cô la trong C: \ ProgramData \ chocolatey \ bin \ npm.exe. Đây là phiên bản npm 1.4.9 và sẽ không cập nhật bất kể cái gì đã làm bao gồm gỡ cài đặt và cài đặt lại NodeJs.

=======

EDIT: Cách tốt hơn để cài đặt nút và npm

Kể từ hôm nay (27/06/2017), cách tốt nhất để cài đặt và quản lý nút và npm là cài đặt nvm (Trình quản lý phiên bản nút) như được giải thích tại đây: https://github.com/coreybutler/nvm-windows . Khi bạn có nvm, việc cài đặt bất kỳ phiên bản nút nào là cực kỳ dễ dàng:

  1. Mở bảng điều khiển yêu thích của bạn (CMD, Cmder, PowerShell)
  2. Loại nvm install 6.10.2(để cài đặt nút phiên bản 6.10.2)
  3. Để xem phiên bản hiện đang hoạt động, gõ nvm list. Điều này in một cái gì đó như dưới đây:

  6.9.3   
* 6.9.2 (Currently using 64-bit executable)
  6.9.1
  6.10.2

|
  • 1

    Bạn đã cứu ngày của tôi !! Tôi đã từng gặp vấn đề tương tự. Tôi đã cài đặt nodejs bằng chocolatey và tôi không thể nâng cấp phiên bản npm.

    – Bùi Việt Thái 21:07:02 01/03/2017
4

Để cập nhật nút npm trên Windows

Tôi phải xóa nút trong:

C: \ Người dùng ** NGƯỜI DÙNG CỦA BẠN ** \ AppData \ Chuyển vùng

Và cài đặt lại nút

|
1

Bạn cần làm theo hướng dẫn nâng cấp Windows

https://www.npmjs.com/package/npm-windows-upTHER

Trước tiên, hãy đảm bảo rằng bạn có thể thực thi các tập lệnh trên hệ thống của mình bằng cách chạy lệnh sau từ PowerShell nâng cao. Để chạy PowerShell với tư cách Quản trị viên, bấm Bắt đầu, tìm kiếm PowerShell, bấm chuột phải vào PowerShell và chọn Chạy với tư cách Quản trị viên.

  1. Set-ExecutPolicy Không bị giới hạn -Scope CurrentUser -Force
  2. cài đặt npm --global - sản xuất npm-windows-nâng cấp
  3. npm-windows-nâng cấp

Bạn muốn chỉ cài đặt phiên bản mới nhất? 1.npm-windows-nâng cấp - phiên bản mới nhất

|
0

Tôi đã thử hầu hết mọi câu trả lời nhưng không ai trong số họ làm việc theo cách của tôi.
Cả npm-windows-nâng cấp đều không hoạt động và cài đặt npm npm @ mới nhất, v.v.
Đối với những người như tôi, tôi sẽ đề nghị các bạn tải xuống trình cài đặt mới nhất từ trang web Node.js , hãy để phiên bản hiện tại của thư mục nút ở vị trí của nó và không thay đổi bất cứ điều gì chỉ cần cài đặt trình cài đặt msi và bạn sẽ kết thúc với phiên bản nâng cấp của nút .
Trường hợp của tôi là nâng cấp nút từ 6 lên 8,9.3

|
0

Sử dụng công cụ nâng cấp npm-windows để nâng cấp đơn giản. Các bước được cung cấp trong liên kết.

|
0

Vì vậy, không có câu trả lời nào trước đây giải quyết được vấn đề cho tôi vì vậy tôi nghĩ rằng tôi sẽ đăng giải pháp cụ thể của mình, điều mà tôi đã tìm ra bằng cách xem qua tất cả các câu trả lời khác để chúng thực sự hữu ích.

Vấn đề của tôi là vì tôi đã sử dụng chocolatey để cài đặt nút và có thể là npm (nhìn vào trang web chocolate bây giờ tôi không nên làm điều đó).

Để giải quyết vấn đề, tôi chỉ cần chạy các lệnh gỡ cài đặt choco có liên quan cho npm và nút và sau đó mọi thứ chuyển sang phiên bản nút khác mà tôi cũng đã cài đặt bằng nút msi (từ trang web của nút).

Tôi hy vọng điều đó sẽ giúp bất cứ ai khác có thể đã đi vào con đường giống như tôi.

|
0

Tôi đã làm một cái gì đó tương tự như Sam Mikes. Tôi chỉ chia sẻ điều này bởi vì tôi không thể có được một trong những giải pháp của anh ấy để làm việc trên giàn khoan của mình. Sau một chút chơi xung quanh, đây là những gì làm việc cho tôi:

  1. Xóa NPM / Node khỏi Biến môi trường của bạn, cho cả người dùng và hệ thống.
  2. Đóng bàn điều khiển mở của bạn nếu bạn có một mở, sau đó mở bàn điều khiển với tư cách quản trị viên
  3. Thay đổi thư mục thành %USERPROFILE%- đó là biến môi trường của cửa sổ đưa bạn đếnC:\Users\CurrentlyLoggedInUser
  4. Chạy từ bảng điều khiển trong% USERPROFILE%, "C:\Program Files\nodejs\npm" install npm -g(bạn có thể có của bạn trong thư mục x86)
  5. Nếu giải pháp này phù hợp với bạn, bước 4 sẽ có hiệu quả và npm -vsẽ hiển thị phiên bản cập nhật
  6. Thêm lại nút (trong tệp chương trình) / NPM (trong dữ liệu ứng dụng - cái được cài đặt trong tệp chương trình phải là cái cũ) cho các biến môi trường hệ thống và người dùng của bạn

Lưu ý: Trước đây tôi đã sử dụng tập lệnh tự động của Microsoft để sửa lỗi này, nhưng chỉ vì tôi không nhận ra việc tự làm nó dễ dàng như thế nào.

|
  • 1

    Hừ! Vì vậy, tôi đã nâng cấp, và sau đó cần hạ cấp và gặp lại vấn đề này ... Ban đầu tôi đã viết câu trả lời này cho LTS 4.2.3, và nó hoạt động cho LTS 4.4.0

    – Bùi Việt Thái 20:23:13 21/03/2016

Câu trả lời của bạn (> 20 ký tự)

Bằng cách click "Đăng trả lời", bạn đồng ý với Điều khoản dịch vụ, Chính sách bảo mật and Chính sách cookie của chúng tôi.

Không tìm thấy câu trả lời bạn tìm kiếm? Duyệt qua các câu hỏi được gắn thẻ hoặc hỏi câu hỏi của bạn.