How do I update npm on Windows?

2019-01-16 05:30发布

问题:

When I install node 0.10.33 from the msi ( http://nodejs.org/download/ ), I get an old version of npm (1.4.28). How can I upgrade npm on Windows?

npm install -g npm

does not work; I still have the old npm.

回答1:

You need to follow the Windows upgrade instructions ( https://github.com/npm/npm/wiki/Troubleshooting#upgrading-on-windows )

tl;dr - npm -g install npm does work, but the old version of npm is still in your PATH.

To fix this, do one of these:

Option 2: remove both of

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

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

Or

Option 3: Open cmd.exe as administrator, navigate to C:\Program Files (x86)\nodejs and then run the installation without -g:

npm install npm@latest



回答2:

We at Microsoft Open Source wrote a small tool to automate the process outlined above. You can find it here or just install and run it by executing the following in an elevated command prompt / PowerShell:

npm install -g npm-windows-upgrade
npm-windows-upgrade


回答3:

There May be many ways to update your npm in Windows

Way 1

  1. Open you power shell as Administrator and run following commands step by step.
  2. Set-ExecutionPolicy Unrestricted -Scope CurrentUser -Force
  3. npm install -g npm-windows-upgrade
  4. npm-windows-upgrade
  5. Here you can select your preferred version of npm
  6. Ready to go !

Way 2

  1. You can simply upgrade to the latest npm version with following command
  2. npm install npm@latest -g
  3. or if you want a specific version of npm simply run
  4. npm install npm@{version} -g for example npm install npm@3.3.12 -g

Now simply run npm --version or npm -v to know your current version of npm

3.3.12 is my preferred version of npm that best suits for approximately every package.



回答4:

So, TL;DR; this worked:

  1. Uninstall node

  2. From a command prompt, run where npm

  3. If you had npm installed via chocolatey, you'll see a path like C:\ProgramData\chocolatey\bin\npm.exe - DELETE it!
  4. Now install NodeJS using the appropriate MSI from https://nodejs.org/en/download/
  5. In your favourite shell, type npm --version - this should now echo the version of NPM that came with NodeJS (at the time of this writing, that version is 3.10.10)

This is what worked for me (goofy me!) I had (age ago) installed npm via chocolatey, which created a chocolatey initiated npm.exe in C:\ProgramData\chocolatey\bin\npm.exe. This was npm version 1.4.9 and wouldn't update no matter what one did including uninstall and reinstall NodeJs.

=======

EDIT: Better way to install node and npm

As of today (27/06/2017), the best way to install and manage node and npm is to install nvm (Node Version Manager) as explained here: https://github.com/coreybutler/nvm-windows. Once you have nvm, installing any node version is super easy:

  1. Open your favourite console (CMD, Cmder, PowerShell)
  2. Type nvm install 6.10.2 (to install node version 6.10.2)
  3. To see the currently active version, type nvm list. This prints something like below:

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



回答5:

You need to follow the Windows upgrade instructions

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

First, ensure that you can execute scripts on your system by running the following command from an elevated PowerShell. To run PowerShell as Administrator, click Start, search for PowerShell, right-click PowerShell and select Run as Administrator.

  1. Set-ExecutionPolicy Unrestricted -Scope CurrentUser -Force
  2. npm install --global --production npm-windows-upgrade
  3. npm-windows-upgrade

Want to just install the latest version? 1.npm-windows-upgrade --npm-version latest



回答6:

I did something similar to Sam Mikes. I'm only sharing this because I couldn't get either of his solutions to work on my rig. After a bit of playing around, this is what worked for me:

  1. Remove NPM/Node from your Environment Variables, both for user and system.
  2. Close your open console if you have one open, then open a console as administrator
  3. Change directories to %USERPROFILE% -- that's a window's environment variable that takes you to C:\Users\CurrentlyLoggedInUser
  4. Run from the console in %USERPROFILE%, "C:\Program Files\nodejs\npm" install npm -g (you might have yours in the x86 folder)
  5. If this solution would work for you, step 4 would have worked, and npm -v will show a an up-to-date version
  6. Re-add Node (in Program Files)/NPM (in App Data -- the one installed in Program Files should be the old one) to your user and system environment variables

Note: I've used the Microsoft automated script in the past to fix this, but only because I didn't realize how easy it would be to do it myself.



回答7:

So none of the previous answers solved the issue for me so I thought I would post my specific solution, which I managed to figure out by going through all the other answers so they were really helpful.

My issue was because I had used chocolatey to install node and possibly npm (looking at chocolatey site now I shouldn't have done that).

To solve the issue I simply had to run the relevant choco uninstall commands for npm and node and then everything switched to the other version of node which I had also installed using the node msi (from node's website).

I hope that helps anyone else that may have gone down the same path as me.



回答8:

Use npm-windows-upgrade tool to simply upgrade. Steps are provided in the link.



回答9:

I tried almost every answer but none of them works my way.
Neither npm-windows-upgrade worked nor did the npm install npm@latest etc etc worked.
For people like me I will suggest you guys downloading the latest installer from Node.js website, let the existing version of node directory be on it's place and without changing anything just install the msi installer and you will end up with an upgraded version of node.
My case was upgrading node from 6 to 8.9.3



回答10:

For update node npm on Windows

I have to delete node in:

C:\Users**YOUR USER**\AppData\Roaming

And reinstall node