如何使用 Node 版本管理器运行多个版本的 Node.js

介绍

如果你在多個 Node.js 項目上工作,你可能曾經遇到過這個問題,你已經安裝了 Node.js 最新的和最棒的版本,而你要工作的項目需要較舊的版本,在這些情況下,Node 版本管理器(https://github.com/nvm-sh/nvm) (nvm) 是一個很好的工具,允許你安裝多個 Node.js 版本,並隨您所願地切換。

在本教程中,您将安装nvm,并学习如何安装,删除和切换Node.js的不同版本。

前提条件

要完成本教程,您将需要以下内容:

要在 macOS 上安装 Node,请遵循本教程中描述的步骤 如何在 macOS 上安装 Node.js 和创建本地开发环境

步骤1 - 开始

要开始,您需要在您的系统上安装 Node Version Manager,或nvm

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

如果你更喜欢wget,你可以运行这个命令:

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

一旦安装,请关闭您的终端应用程序,以便更改生效。您还需要将几个行添加到您的 bash shell 启动文件中。此文件可能名为 .bashrc, .bash_profile,或 .zshrc,取决于您的操作系统。

1export NVM_DIR="$HOME/.nvm"
2[ -s "$NVM_DIR/nvm.sh" ] && \. "$NVM_DIR/nvm.sh"
3[ -s "$NVM_DIR/bash_completion" ] && \. "$NVM_DIR/bash_completion"

安装了nvm,您现在可以安装和使用多个版本的 Node.js。

步骤 2 — 安装多个 Node.js 版本

现在你已经安装了nvm,你可以安装几个不同的 Node.js 版本:

1nvm install 0.10

运行此命令后,这是您的终端应用程序中显示的输出:

1[secondary_label Output]
2Downloading and installing node v0.10.48...
3Downloading https://nodejs.org/dist/v0.10.48/node-v0.10.48-darwin-x64.tar.xz...
4######################################################################### 100.0%
5Computing checksum with shasum -a 256
6Checksums matched!
7Now using node v0.10.48 (npm v2.15.1)

您还可以安装 Node 版本 8 和版本 12:

1nvm install 8
2nvm install 12

在运行每个命令时,‘nvm’将从官方网站下载Node.js的版本并安装它,一旦安装,它还将将您刚刚安装的版本设置为活跃版本。

如果在上述每一个命令后运行节点 - 版本,则会看到相应主要版本的最新版本。

你也可以运行nvm install 12.0.0来明确安装 Node.js 的特定 12.0.0 版本。

步骤 3 — 列出已安装的 Node.js 版本

安装了少数不同的 Node.js 版本,我们可以使用ls参数运行nvm,列出我们已安装的一切:

1nvm ls

运行此命令产生的输出可能看起来像这样:

 1[secondary_label Output]
 2    v0.10.48
 3        v4.9.1
 4    v6.10.3
 5    v6.14.4
 6        v8.4.0
 7    v8.10.0
 8    v10.13.0
 9    v10.15.0
10    v10.15.3
11    ->      v12.0.0
12    v12.7.0
13        system
14default -> v10.15 (-> v10.15.3)
15node -> stable (-> v12.7.0) (default)
16stable -> 12.7 (-> v12.7.0) (default)
17iojs -> N/A (default)
18unstable -> N/A (default)
19lts/* -> lts/dubnium (-> N/A)
20lts/argon -> v4.9.1
21lts/boron -> v6.17.1 (-> N/A)
22lts/carbon -> v8.16.0 (-> N/A)
23lts/dubnium -> v10.16.0 (-> N/A)

您的输出可能取决于您在计算机上安装了多少版本的 Node.js。

小小的->表示活跃版本,而默认版本表示Node.js的默认版本.Node的默认版本是当您打开新壳时可用的版本。

您可能想更改您的机器默认的 Node.js 版本,您也可以使用nvm来完成此操作。

步骤 4 — 设置默认 Node.js 版本

即使在游戏中有多个版本,你有很好的机会有一个版本,你会更愿意运行大部分时间. 通常,这将是Node.js的最新稳定版本。

若要将最新稳定版本设置为默认版本,请运行:

1nvm alias default stable

运行此命令后,这将是您看到的输出:

1[secondary_label Output]
2default -> stable (-> v15.1.0)

您还可能有一个特定的版本号,您希望将其设置为默认值。

1nvm alias default 10.15
1[secondary_label Output]
2default -> 10.15 (-> v10.15.3)

现在,每次你打开一个新的壳,Node.js 版本将立即可用。你所做的某些工作可能需要不同的 Node.js 版本。

第 5 步:在 Node.js 版本之间切换

要切换到另一个 Node.js 版本,请使用nvm命令使用,然后使用您想要使用的 Node.js 版本:

1nvm use 0.10

以下是你将看到的结果:

1[secondary_label Output]
2Now using node v0.10.48 (npm v2.15.1)

您甚至可以回到您的默认版本:

1nvm use default

此时,您已安装了多个版本的 Node.js. 您可以使用nvm来卸载您可能拥有的任何不需要的 Node.js 版本。

步骤 6 — 删除 Node.js 版本

您可能有多个版本的 Node.js 安装,因为您在计算机上工作的各种项目。

幸运的是,您可以像安装它们一样轻松地删除 Node.js 版本:

1nvm uninstall 0.10

以下是运行此命令后会显示的输出:

1[secondary_label Output]
2Uninstalled node v0.10.48

不幸的是,当您指定主要或小版本时,nvm只会卸载与版本号匹配的最新安装版本。

因此,如果您安装了 Node.js 版本 6 的两个不同的版本,则必须为每个版本运行卸载命令:

1[secondary_label Output]
2$ nvm uninstall 6
3Uninstalled node v6.14.4
4
5$ nvm uninstall 6
6Uninstalled node v6.10.3

值得注意的是,您无法删除当前正在使用和活跃的 Node.js 版本。

您可能想返回系统的默认设置并停止使用 nvm. 下一步将解释如何做到这一点。

第7步:卸载Node版本管理器

如果您想从您的机器中完全删除nvm,您可以使用卸载命令:

1nvm unload

如果您仍然希望在计算机上保留nvm,但想要返回系统安装的 Node.js 版本,则可以通过运行此命令进行切换:

1nvm use system

现在您的计算机将返回安装的 Node.js 版本。

结论

在使用不同版本的 Node.js 的多个项目上工作不一定是一个噩梦. Node Version Manager 使过程无缝. 如果你想避免记住要切换版本,你可以通过在项目的根中创建一个 .nvmrc 文件来进一步:

1$ echo "12" > .nvmrc

作为下一步,您可以学习如何创建您自己的 Node.js 程序,使用本教程 如何在 Node.js 中编写和运行您的第一个程序

Published At
Categories with 技术
Tagged with
comments powered by Disqus