乐趣区

如何使用nvm管理Nodejs多版本

如何使用 nvm 管理 Node.js 多版本

Node.js 版本管理工具。Git 地址:https://github.com/nvm-sh/nvm

安装 nvm

Mac OS:

如果已经安装了 node,在安装 nvm 之前,不需要卸载这个版本的 node。这个版本的 node 后续会成为 nvm 中的 system 版本的 node。

具体步骤如下:

  1. 首先安装 C ++ 编译器,使用 XCode 的命令行工具,在 Terminal 中输入:xcode-select --install
  2. 然后在 Terminal 里输入:

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

    或者:

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

    ⚠️注意:命令中的 v0.34.0 是随着最新版本变化的。可以去 Git 查看最新的版本。

  3. 重启 Terminal(不然 nvm 不生效),然后输入下面的指令来查看是否安装成功:command -v nvm。如果返回 nvm 字样,就代表安装成功。

用 nvm 操作 node

查看目前已有的 node

如果在安装 nvm 之前,系统已经安装了 Node.js,那么这个版本的 Node.js 将会成为 system 版本。

此时,在 Terminal 里输入:nvm ls,查看都安装了哪些 node 版本,会出现如下返回结果:

->       system
iojs -> N/A (default)
node -> stable (-> N/A) (default)
unstable -> N/A (default)

上面返回的内容,代表,此时只有系统原来带的 node 版本,没有通过 nvm 安装任何的 node 版本。

安装其它版本的 node

安装最新版本的 node:

nvm install node

安装特定版本的 node:

nvm install 10.15.3

其中,10.15.3 为想要安装的 node 的版本号。

可以查看目前有哪些 node 可以安装:

nvm ls-remote

安装一个 node 的新版本以后,通过指令 nvm ls 查看会返回如下结果:

->     v10.15.3
         system
default -> 10.15.3 (-> v10.15.3)
node -> stable (-> v10.15.3) (default)
stable -> 10.15 (-> v10.15.3) (default)
iojs -> N/A (default)
unstable -> N/A (default)
lts/* -> lts/dubnium (-> v10.15.3)
lts/argon -> v4.9.1 (-> N/A)
lts/boron -> v6.17.1 (-> N/A)
lts/carbon -> v8.16.0 (-> N/A)
lts/dubnium -> v10.15.3

可以发现,除了 system 以外,还出现了一个 v10.15.3,而且自动应用了这个v10.15.3 版本。

node 版本切换

使用如下指令切换 node 版本:

nvm use system

返回如下内容,代表已经切换到 system 版本:

Now using system version of node: v8.11.3 (npm v6.9.0)

输入如下指令,切换到刚刚安装的版本:

nvm use 10.15.3

返回如下内容,代表已经切换到 10.15.3 版本:

Now using node v10.15.3 (npm v6.4.1)

对于目前的 10.15.3,应为它是第一个通过 nvm 安装的 node 版本,所以自动给它分配了一个 alias:default。所以,也可以通过这个指令切换到这个版本上:

nvm use default

也可以通过这个指令切换到已安装的最新的版本:

nvm use node

由于目前最新的版本就是 default 的 10.15.3,所以就等同于nvm use default

再安装一个版本:8.16.0。输入指令nvm install 8.16.0,返回如下内容:

->      v8.16.0
       v10.15.3
         system
default -> 10.15.3 (-> v10.15.3)
node -> stable (-> v10.15.3) (default)
stable -> 10.15 (-> v10.15.3) (default)
iojs -> N/A (default)
unstable -> N/A (default)
lts/* -> lts/dubnium (-> v10.15.3)
lts/argon -> v4.9.1 (-> N/A)
lts/boron -> v6.17.1 (-> N/A)
lts/carbon -> v8.16.0
lts/dubnium -> v10.15.3

发现比之前多了一行 -> v8.16.0,并且8.16.0 被应用。

给特定版本分配 alias

8.16.0 切换到别的版本以后,如果再想切换回来,只能通过 nvm use 8.16.08.16.0 不方便记忆,也不方便输入,可以通过给这个版本设置一个 alias,来解决这个问题。输入如下指令:

nvm alias carbon 8.16.0

返回的结果:

carbon -> 8.16.0 (-> v8.16.0)

此时,再次输入nvm ls,会返回如下结果:

->      v8.16.0
       v10.15.3
         system
carbon -> 8.16.0 (-> v8.16.0)
default -> 10.15.3 (-> v10.15.3)
node -> stable (-> v10.15.3) (default)
stable -> 10.15 (-> v10.15.3) (default)
iojs -> N/A (default)
unstable -> N/A (default)
lts/* -> lts/dubnium (-> v10.15.3)
lts/argon -> v4.9.1 (-> N/A)
lts/boron -> v6.17.1 (-> N/A)
lts/carbon -> v8.16.0
lts/dubnium -> v10.15.3

会发现多了一行carbon -> 8.16.0 (-> v8.16.0),这代表 carbon 就是版本 8.16.0,所以如果想切换到 8.16.0,可以输入如下指令:

nvm use carbon

也可以通过 alias 指令,改变 default 所代表的版本:

nvm alias default 8.16.0

8.16.0 就成为 default 版本了。

输入 nvm alias 可以查看都有哪些已经设置好的 alias。

还可以通过 nvm unalias carbon 来取消 carbon 这个 alias。

卸载 node

nvm uninstall alias/node

⚠️注意:不能卸载当前正在运行中的 node 版本。

可以通过 nvm uninstall 来查看有哪些版本可以卸载。

退出移动版