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.
335 Answers
12 NextUbuntu Linux/Mac:
The module n makes version-management easy:
npm install n -gFor the latest stable version:
n stableFor the latest version:
n latestWindows:
just reinstall node from the .msi in Windows from the node website.
27All 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
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 nodeManaging 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- | bashIf 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.15.0Note: 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.15.0You 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
sudowith 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!
via npm:
npm cache clean -f
npm install -g n
n stableand also you can specify a desired version:
n 0.8.21In case it doesn't seem to work, the installation gives you a hint :
3If "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)
On Windows download latest "Windows Installer (.msi)" from 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 -gNote
You can always check the version with following command:
C:\node -v
v0.12.4
C:\npm -version
2.10.1 2 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 and use the latest installer.
6Following 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/nodeFor Upgrading Node.js to latest version
sudo n latestIf 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 nThis 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.0At any given time you can switch to another with use:
nvm use 0.12Addition n13: in case 'sudo n stable' has errors, try this:
sudo -E env "PATH=$PATH" n stable 2 Upgrading node.js to the latest version on Windows
Install chocolatey if you haven't already:Installing Chocolatey
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
For brew users on Mac OSX
brew upgrade nodeWhich produces:
Andrews-MacBook-Air :: ~/dev/cookiecutter-ionic ‹master*› » brew upgrade node
==> Upgrading 1 outdated package, with result:
node 0.12.7
==> Upgrading node
==> Downloading
######################################################################## 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 Install npm =>
sudo apt-get install npmInstall n =>
sudo npm install n -glatest 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 lsInstall a specific version =>
sudo n 4.5.0 I had node version v7.10.0 in Ubuntu
Used below commands to upgrade
curl -sL | sudo -E bash -
sudo apt-get install -y nodejsNow its upgraded to v8.2.1
or
sudo apt-get install make
sudo curl -L | 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 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
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 shellYou 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.
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.
brew upgrade nodewill upgrade to the latest version of the node
If you are using Linux .. Just do the following steps sudo -i
sudo apt install curl
curl -sL | sudo bash -
sudo apt-get install -y nodejsyou should have now the latest version
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. > ;)
1Its 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.
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.
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.xCheck node path
$ which node
/usr/bin/nodeDownload latest(6.x) node files from [Download][1]
[1]: 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 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.
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.
1Re-install the latest version of nodejs by downloading the latest .msi version from nodejs website here,
It worked for me in my windows machine.
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.
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 nodeAnd to always use the "node" version:
nvm alias default nodeFinally to upgrade your node version and keep the installed packages:
nvm install node --reinstall-packages-from=node I used
- install chocolatey refering this
- run in cmd
cup nodejs
That's all. NodeJs now updated to latest version
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!
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 just run command line npm install -g npm or sudo npm install -g npmto update it for mac user. That's it.
Windows 10
Open CMD in folder C:\Program Files\nodejs\node_modules and type npm i npm
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- | bash
or Wget:
wget -qO- | 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
check the node version:
12 Nextnode -v