Upgrading Node.js to latest version

node.jsUpgrade

node.js Problem Overview


So, I have Node.js installed and now when I tried to install Mongoosejs I got an error telling me that I don't have the needed version of Node.js (I have v0.4.11 and v0.4.12 is needed).

How can I upgrade to this version? I suppose I just could install it again with the latest version, but I don't want to do it before I'm sure that my project folders in the folder "node" won't be deleted.

node.js Solutions


Solution 1 - node.js

Ubuntu Linux/Mac:

The module n makes version-management easy:

npm install n -g

For the latest stable version:

n stable

For the latest version:

n latest
Windows:

just reinstall node from the .msi in Windows from the node website.

Solution 2 - node.js

All Platforms (Mac, Linux & Windows) 2022

If you just need to upgrade your old version of Node.js to the latest one and don't need multiple versions, simply over-write your existing executable with the new one.

Download the Latest Node.js from nodejs.org/en/download

enter image description here

This Just Works! TM on all platforms and is the easiest/fastest method.
When you run node -v in your terminal you will see the the latest version.

Mac

If you originally installed Node.js using brew then run:

brew upgrade node

Managing Multiple Versions of Node.js:

If you need to run multiple versions of Node.js on your machine e.g. if you have an older project that targets a specific version on AWS Lambda, then NVM (Node Version Manger) is your friend!

Step 1 - Get NVM
curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.0/install.sh | bash

> If you're curious about the installation command read the source code
... its been reviewed by several node.js security experts

Step 2 - Install the version of node.js you need

Once you've got NVM you can install a specific version of Node.js using the nvm command:

nvm install v16.14.0

Note: you may need to close & re-open your terminal window for nvm command to be available.

You should expect to see something like this in your terminal:

Now using node v16.14.0

You now have the latest Node.js on your machine.
And if you need to temporarily switch to a different/previous version, you can do it with a simple nvm command.

> Note: avoid using sudo with Node/NPM as it violates the security principal of least privilege

NVM is considered "better" than N for managing multiple Node.js versions because the verbose commands mean is much easier to keep track of what you are doing in your Terminal/SSH Log. It is used by the team at NPM the creators/custodians of the Node.js World!

Solution 3 - node.js

via npm:

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

and also you can specify a desired version:

n 0.8.21

In case it doesn't seem to work, the installation gives you a hint :

> If "node --version" shows the old version then start a new shell, or reset the location hash with: hash -r (for bash, zsh, ash, dash, and ksh) [or] rehash (for csh and tcsh)

reference

Solution 4 - node.js

On Windows download latest "Windows Installer (.msi)" from https://nodejs.org/download/release/latest/ and install same directory , thats all...

After complete the installation above, the NodeJS and NPM will be upgraded to the latest one and then you can cleanup the package as normal as:

npm cache clean
npm update -g

Note

You can always check the version with following command:

C:\node -v
v0.12.4

C:\npm -version
2.10.1

Solution 5 - node.js

All platforms (Windows, Mac & Linux)

Updated May 2021

That's it folks. It used to be more complex and people used different kinds of packages and strategies to manage it. But things have changed for the better.

Just go to [nodejs.org][1] and use the latest installer.

[1]: https://nodejs.org/en/ "nodejs.org"

Solution 6 - node.js

Following Upgrading Node.js to latest version

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

sudo ln -sf /usr/local/n/versions/node/<VERSION>/bin/node /usr/bin/node

For Upgrading Node.js to latest version

sudo n latest

If you need to do Undo then follow command

sudo apt-get install --reinstall nodejs-legacy     # fix /usr/bin/node
sudo n rm 6.0.0     # replace number with version of Node that was installed
sudo npm uninstall -g n

This method of upgrading node is now unstable and should not be used. The best way to manage Node.js versions is to use NVM: Node Version Management.!

Installation

You can read the installation steps on the nvm [GitHub page][1]. There are only two easy steps for installation and configuration. Using nvm

If you work with a lot of different Node.js utilities, you know that sometimes you need to quickly switch to other versions of Node.js without hosing your entire machine. That's where you can use nvm to download, install, and use different versions of Node.js:

nvm install 4.0

At any given time you can switch to another with use:

nvm use 0.12

Addition n13: in case 'sudo n stable' has errors, try this:

sudo -E env "PATH=$PATH" n stable

Solution 7 - node.js

Upgrading node.js to the latest version on Windows

  1. Install chocolatey if you haven't already: Installing Chocolatey

  2. From the command prompt, type

    cup nodejs

(which is equivalent to typing choco upgrade nodejs -- assumes you already have node installed)

NOTE: You may need to run cinst nodejs.install for chocolatey to register your existing installation. (thanks for the comment, @mikecheel)


Installing node.js on Windows

If you have never installed node, you can use chocolatey to do that as well. Install chocolatey (see step 1 above). Then from a command prompt, type:

cinst nodejs.install

Chocolatey Gallery Node JS (Install)


Installing a specific version of node on Windows with chocolatey

cinst nodejs.install -Version 0.10.26

Solution 8 - node.js

For brew users on Mac OSX

brew upgrade node

Which produces:

Andrews-MacBook-Air :: ~/dev/cookiecutter-ionic ‹master*› » brew upgrade node
==> Upgrading 1 outdated package, with result:
node 0.12.7
==> Upgrading node
==> Downloading https://homebrew.bintray.com/bottles/node-0.12.7.yosemite.bottle
######################################################################## 100.0%
==> Pouring node-0.12.7.yosemite.bottle.tar.gz
==> Caveats
Bash completion has been installed to:
  /usr/local/etc/bash_completion.d
==> Summary
🍺  /usr/local/Cellar/node/0.12.7: 2726 files, 31M

Solution 9 - node.js

Install npm =>

sudo apt-get install npm

Install n =>

sudo npm install n -g

latest version of node =>

sudo n latest 

So latest version will be downloaded and installed

Specific version of node you can

List available node versions =>

n ls

Install a specific version =>

sudo n 4.5.0

Solution 10 - node.js

I had node version v7.10.0 in Ubuntu

Used below commands to upgrade

curl -sL https://deb.nodesource.com/setup_8.x | sudo -E bash -
sudo apt-get install -y nodejs

Now its upgraded to v8.2.1

or

sudo apt-get install make
sudo curl -L https://git.io/n-install | bash
. /home/$USER/.bashrc

# Below command should get the latest version of node
node --version

# Install specific version of node
n 8.2

# Check for the Node Version installed
node --version

Solution 11 - node.js

sudo npm install n -g sudo n 0.12.2

or

sudo npm install -g n sudo n latest

or

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

These work well. But for UX term terminal node -v did not show latest version so I have closed and reopened new terminal. I found v10.1.0, output of node-v after installation by sudo n latest

Solution 12 - node.js

Using brew and nvm on Mac OSX:

If you're not using nvm, first uninstall nodejs. Then install Homebrew if not already installed. Then install nvm and node:

brew install nvm
nvm ls-remote    # find the version you want
nvm install v7.10.0
nvm alias default v7.10.0    # set default node version on a shell

You can now easily switch node versions when needed.

Bonus: If you see a "tar: invalid option" error when using nvm, brew install gnu-tar and follow the instructions brew gives you to set your PATH.

Solution 13 - node.js

my 2c:

I tried both with n and with nvm on Linux Ubuntu 12.04 LTS, in order to update node from v0.8.25 to v0.10.22.

The first one was successfully completed, but the command 'which node' resulted in the old v0.8.25.
The second one was successfully completed and the same command resulted in v.0.10.22.

Solution 14 - node.js

brew upgrade node

will upgrade to the latest version of the node

Solution 15 - node.js

If you are using Linux .. Just do the following steps sudo -i sudo apt install curl curl -sL https://deb.nodesource.com/setup_10.x | sudo bash - sudo apt-get install -y nodejs you should have now the latest version

Solution 16 - node.js

You don't need to worry about an upgrading process.

You can just install the newest version using the official documentation as if you didn't have it installed and it will work like a charm. > https://nodejs.org/en/download/package-manager/ ;)

Solution 17 - node.js

Its very simple in Windows OS.

You do not have to do any uninstallation of the old node or npm or anything else.

Just go to nodejs.org

And then look for Downloads for Windows option and below that click on Current... Latest Feature Tab and follow automated instructions

It will download the latest node & npm for you & discarding the old one.

Solution 18 - node.js

Open the package.json file of the node.js project and replace the version number specified with * in the dependencies will fetch you the latest version.

Solution 19 - node.js

If you are looking in linux..

npm update will not work mostly am not sure reason but following steps will help you to resolve issue...

Terminal process to upgrade node 4.x to 6.x.

 $ node -v
 v4.x

Check node path

$ which node
/usr/bin/node

Download latest(6.x) node files from [Download][1]

[1]: https://nodejs.org/dist/v6.9.2/node-v6.9.2-linux-x64.tar.xz and unzip files keep in /opt/node-v6.9.2-linux-x64/.

Now unlink current node and link with latest as following

$ unlink /usr/bin/node
$ ln -s /opt/node-v6.9.2-linux-x64/bin/node node
$ node -v
$ v6.9.2

Solution 20 - node.js

There is good explanation for linux users how to update node version step by step. P.S type instead of sudo n stable sudo n latest for receive latest node version.

If you receive following error

> Error: Module version mismatch. Expected 48, got 46.

You have just rebuilt npm by the following command npm rebuild it should fix the problem.

Solution 21 - node.js

For Windows users, simply go to the node.js (nodejs.org) website and download the latest version (8.6.0 as of 09/29/2017). Follow the steps from the auto install window and you're good to go. I just did it and when I checked my latest version in webstorm, it was already there.

Solution 22 - node.js

Re-install the latest version of nodejs by downloading the latest .msi version from nodejs website here, https://nodejs.org/en/download/

It worked for me in my windows machine.

Solution 23 - node.js

just try this on your terminal :

nvm install node --reinstall-packages-from=node

it should do the trick.

later, run node --version to check the version that you have.

Solution 24 - node.js

After install nvm as @nelsonic describes, this is the easiest way to keep it upgraded:

"node" is a shortcut to the last version, so you can install the last version with:

nvm install node

And to always use the "node" version:

nvm alias default node

Finally to upgrade your node version and keep the installed packages:

nvm install node --reinstall-packages-from=node

Solution 25 - node.js

I used https://chocolatey.org/install

  1. install chocolatey refering this https://chocolatey.org/install
  2. run in cmd

> cup nodejs

That's all. NodeJs now updated to latest version

Solution 26 - node.js

For Windows

I had the same problem, I tried to reinstall and didn't worked for me.

Remove "C:\Program Files(x86)\nodejs" from your system enviorment PATH and thats it!

Solution 27 - node.js

Just bundling node and npm updates to latest version into a single command for my ~/.bash_profile:

update-node(){
  sudo n latest;
  sudo npm install -g npm;
  node --version;
}

This assumes you've already installed "n" from Eldar Djafarov's answer. After saving this to your Bash profile, re-open the terminal and just type update-node and enter your sudo password:

λ update-node
Password:
/usr/local/bin/npm -> /usr/local/lib/node_modules/npm/bin/npm-cli.js
/usr/local/bin/npx -> /usr/local/lib/node_modules/npm/bin/npx-cli.js
+ npm@5.3.0
updated 1 package in 7.232s
v8.2.1

Solution 28 - node.js

just run command line npm install -g npm or sudo npm install -g npmto update it for mac user. That's it.

Solution 29 - node.js

Windows 10

Open CMD in folder C:\Program Files\nodejs\node_modules and type npm i npm

Solution 30 - node.js

For Ubuntu

Install the nvm (Node Version Manager) using the below command

To install or update nvm, one can use the install script using cURL:

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

or Wget:

> wget -qO- > https://raw.githubusercontent.com/creationix/nvm/v0.33.11/install.sh | > bash

check if nvm is already installed

> nvm --version

To install or update node, run below command:

> nvm install 10.14.1(the version of node one want to install)

To check the list of node version available to the system or currently running for the system, run the below command:

> nvm list

It will list all the available node version present in the system

check the node version:

> node -v

Solution 31 - node.js

If there is an issue with sudo/root access we can do

npm install stable Or
npm install 10.15.0

Solution 32 - node.js

Just install node js using nvm. It will download the lates version of node js.

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

after executing the command. close your terminal and reopen then run this command to install node js latest version.

run : nvm install v14.15.5

now check by typing node -v

Solution 33 - node.js

I'm late to the party, but in Windows 10/11, in my Azure DevOps pipeline, I run these commands from a PowerShell script in my restore phase:

if (!(Test-Path "./$nodeInstaller")) {

    $message = "Downloading node $nodeVersion"
    Write-Output $message

    Invoke-WebRequest "https://nodejs.org/dist/$nodeVersion/$($nodeInstaller)" -OutFile "./$nodeInstaller"
}

# Display node install message
$message = "Installing node $nodeVersion"
Write-Output $message

# Execute MsiExec silently and wait for it to complete.
Start-Process MsiExec.exe -Wait -ArgumentList "/i $($nodeInstaller) /qn /L*v msilog.txt"

In my case, this was necessary for some of my build tools (Angular 13 CLI) as the container image I'm using only had an old version of node. These commands are helpful also in a build/restore pipeline since we can wait for the installation to complete and capture some logs in case of an install failure.

Solution 34 - node.js

If Node install script doesn't work for you (it didn't for me), here's the solution to update Node Js in Debian Jessie, taken from the reply from Thomas Ward at askubuntu.com (Thanks, buddy!).

1.- Create a new file: /etc/apt/sources.list.d/nodesource.list

You'll need to create this file with sudo, but when you create the file, put this inside it:

deb https://deb.nodesource.com/node_9.x jessie main
deb-src https://deb.nodesource.com/node_9.x jessie main

Then, save the file. (replace node_9.x with the desired version)

2.- Download the GPG Signing Key from Nodesource for the repository. Otherwise, you may get NO_PUBKEY errors with apt-get update:

curl -s https://deb.nodesource.com/gpgkey/nodesource.gpg.key | sudo apt-key add -

3.- Manually run sudo apt-get update.

This refreshes the data from the nodesource repo so apt knows a newer version exists.

If you get a NO_PUBKEY GPG error, then go back to Step 2

4.- Check apt-cache policy nodejs output.

This is not done by the script, but you want to make sure you see an entry that says something like this in the output:

Version table:
 *** 9.2.0-1nodesource1 0
        500 https://deb.nodesource.com/node_9.x/ jessie/main amd64 Packages
        100 /var/lib/dpkg/status
     0.10.29~dfsg-2 0
        500 http://ftp.debian.org/debian/ jessie/main amd64 Packages

If you do not see entries like this, and only see 0.10.29, start over. Otherwise, proceed.

5.- Install the nodejs binary. Now that you have confirmed 9.x is available on your system, you can install it: sudo apt-get install nodejs

nodejs -v should now show v9.2 or similar on output (as long as it starts with v9. you're on version 9 then).

Solution 35 - node.js

forget all of the above answer if its not working just run the following command if you have install nvm

nvm alias 12.16.0 //add your required node version

Attributions

All content for this solution is sourced from the original question on Stackoverflow.

The content on this page is licensed under the Attribution-ShareAlike 4.0 International (CC BY-SA 4.0) license.

Content TypeOriginal AuthorOriginal Content on Stackoverflow
QuestionholyredbeardView Question on Stackoverflow
Solution 1 - node.jsEldar DjafarovView Answer on Stackoverflow
Solution 2 - node.jsnelsonicView Answer on Stackoverflow
Solution 3 - node.jsjicsView Answer on Stackoverflow
Solution 4 - node.jsErdiView Answer on Stackoverflow
Solution 5 - node.jssweletView Answer on Stackoverflow
Solution 6 - node.jsSagar JethiView Answer on Stackoverflow
Solution 7 - node.jsJon CrowellView Answer on Stackoverflow
Solution 8 - node.jsagcontiView Answer on Stackoverflow
Solution 9 - node.jsGurudath BNView Answer on Stackoverflow
Solution 10 - node.jsSharathView Answer on Stackoverflow
Solution 11 - node.jsPartha SenView Answer on Stackoverflow
Solution 12 - node.jsPeter TsengView Answer on Stackoverflow
Solution 13 - node.jssthor69View Answer on Stackoverflow
Solution 14 - node.jsDavidView Answer on Stackoverflow
Solution 15 - node.jsSmaillnsView Answer on Stackoverflow
Solution 16 - node.jsMarcelo LazaroniView Answer on Stackoverflow
Solution 17 - node.jsAlok RanjanView Answer on Stackoverflow
Solution 18 - node.jsgowwwView Answer on Stackoverflow
Solution 19 - node.jsBEJGAM SHIVA PRASADView Answer on Stackoverflow
Solution 20 - node.jsMichael HorojanskiView Answer on Stackoverflow
Solution 21 - node.jsDavid MitchellView Answer on Stackoverflow
Solution 22 - node.jsmanianView Answer on Stackoverflow
Solution 23 - node.jsVikas PandeyView Answer on Stackoverflow
Solution 24 - node.jsFrancisco KahilView Answer on Stackoverflow
Solution 25 - node.jsJayani SumudiniView Answer on Stackoverflow
Solution 26 - node.jsFilipe CecconView Answer on Stackoverflow
Solution 27 - node.jsWhat Would Be CoolView Answer on Stackoverflow
Solution 28 - node.jsseyhaView Answer on Stackoverflow
Solution 29 - node.jsBill ZelenkoView Answer on Stackoverflow
Solution 30 - node.jsNehaView Answer on Stackoverflow
Solution 31 - node.jsRohit ParteView Answer on Stackoverflow
Solution 32 - node.jsMahedi Hasan DurjoyView Answer on Stackoverflow
Solution 33 - node.jslong2knowView Answer on Stackoverflow
Solution 34 - node.jsmoy2010View Answer on Stackoverflow
Solution 35 - node.jsM.Hassam YahyaView Answer on Stackoverflow