79

Is it possible to have different versions of NodeJS installed on the same machine?

0

8 Answers 8

68

There are several node managers which you can use to achieve this, but the most popular are:

Sign up to request clarification or add additional context in comments.

4 Comments

N seems really awesome, but it doesn't seem to override my running version of node.js. Do you use n, and know how to get it to pre-empt your originally installed version of node?
I actually use NVM at the moment, and I can always roll back to whatever version of Node I want and make is the default. N should have that functionality also though.
For Windows, use nvm-windows, which comes with an installer and is well maintained. (It's also mentioned in this SOF question: multiple-versions-of-node-on-windows).
NVM has a possibility to set node version in the .nvmrc file, I cannot find this feature in N docs, so NVM wins for me
17

I use nave. https://github.com/isaacs/nave

> npm install -g nave > nave use 0.4.12 # starts a subshell with 0.4.12 at the head of the path > node --version v0.4.12 > exit # go back to the original shell > nave use 0.6.5 > node --version v0.6.5 > nave usemain 

Note that the first time you need a version, it will be downloaded and compiled for you.

2 Comments

Nave requires bash. It will probably never work on Windows, or other systems lack a native Bourne Again Shell. github.com/isaacs/nave#compatibility
You can also create named environments. E.g nave use foobar will ask you what version of node to associate with foobar.Once it is created, it can be switched to using the same command.
6

If you need something simple, the n utility is just for you.

Install it (use sudo prefix in commands if required):

npm -g install n 

then :

npm cache clean -f 

(don't be scared about the warning)

then just ask n to (download if required and) use the version you specify. For instance:

n 0.11.13 

Et voilà !

Should you install multiple versions, you'll be able to switch between them. See the n page for details.

Comments

2

You can follow simple approach here

step1:

 $ curl https://raw.githubusercontent.com/creationix/nvm/v0.11.1/install.sh | bash 

step2:

 $ source ~/.profile 

step3: list the latest versions of node

 $ nvm ls-remote 

step4:

 $ nvm install 7.10.0 

step5: Create alias as default for node version

$ nvm alias default 7.10.0 

step6:

$node --version 

that's it.

Comments

1

Windows users check out nvmw here.

You can go quite a long way down trying to install some of the other versions listed before realising there's no Windows support.

e.g. on the page for nave

It will probably never work on Windows, or other systems lack a native Bourne Again Shell. Sorry.

1 Comment

nvmw seems to be not supported anymore: "SORRY, nvmw is no longer maintained. If someone wants to keep maintained, contact me by email or twitter."
0

The best option is node version manager NVM is very simple to install and you can change from one version to another with a simple nvm use command.

Comments

0

You can use NVM - Node Version Manager, Supports both Windows and Mac.

It has all the instructions of how to install and use it.

https://github.com/nvm-sh/nvm

These will be independent installs so you will need to install packages in each versions.

Comments

0

The official Node.js website now has a nice download page, which gives instructions on how to do this, using your choice of a favourite tools. Here's a screenshot:

Screenshot

Using dropdown controls, you can choose the Node version you want, the operating system you are using (Windows, macOS, Linux, or AIX), the version tool you want (nvm, fnm, Docker, Brew, Devbox, Chocolatey, n, or Volta), with the package manager you want (npm, Yarn, or pnpm). It will then spit out a few commands that you can copy and paste into your terminal (Bash, or PowerShell on Windows).

If you prefer to download a pre-built binary, you can also use a dropdown control to select the pre-built binary you need, according to your operating system and system architecture.

Comments

Start asking to get answers

Find the answer to your question by asking.

Ask question

Explore related questions

See similar questions with these tags.