关于Node.js版本管理工具,这一篇即学即用~

9,531 阅读4分钟

在这里插入图片描述

Node.js 是什么?

标准答案:Node.js® 是一个基于 Chrome V8 引擎 的 JavaScript 运行时😂,本文不详细描述,想要了解更多 Node.js 的详细信息,可以阅读朴灵老师的《深入浅出Node.js》,绝对受益匪浅。

为什么需要版本管理工具?
  • 前端各种使用不同版本 Node.js 的 npm 包满天飞的情境下,为了解决 Node.js 各种版本存在不兼容现象,版本管理工具可以让你在同一台机器上快速安装和切换不同版本的 Node.js。
  • 如果您想在不卸载 node 稳定版本的情况下测试使用最新前沿版本开发的模块,版本管理工具可以提供帮助。
版本管理工具有哪些?

nvm

nvm 全名 Node.js Version Management,顾名思义是一个 Node.js 的版本管理工具。在 macOS、Linux(包括适用于 Linux 的 Windows 子系统)和各种其他类 Unix 系统上均受支持。由于 Windows 支持程度不佳,社区孵化了 nvm-windows 供 Windows 使用,它们隶属于不同的项目,相互分开的支持和维护。

n

Node.js 版本管理:没有子 shell,没有配置文件设置,没有复杂的 API,就是简单。与 nvm 相同的系统支持度,在 macOS、Linux(包括适用于 Linux 的 Windows 子系统)和各种其他类 Unix 系统上均受支持。

  • Linux、Mac OSgithub.com/tj/n
  • Windows: 必须通过 WSL(Linux 的 Windows 子系统)工作

nodenv

从 rbenv 分叉出来的 Node.js 版本管理工具,使用 nodeenv 为您的应用程序选择一个 Node 版本,并确保您的开发环境与生产环境相匹配。将 nodeenv 与npm一起使用,以实现无痛 Node 升级和防弹部署。

...等等等等,本文暂时只详细介绍 nvm,其他的后续补充。

nvm 的安装与使用

一、nvm-windows: Windows 版本

1. 下载安装包

github.com/coreybutler… 在这里插入图片描述

下载获取最新的 nvm-setup.zip 文件。

2. 安装 nvm

在这里插入图片描述

3. 安装后验证

打开 CMD 运行 nvm 命令,出现版本号以及命令帮助等,安装成功。

在这里插入图片描述

4. 常用命令

4.1 查看本地安装的所有版本

可选参数 available,显示当前所有可下载的 Node.js 版本 可选参数 arch,指定是安装 32 位还是 64 位版本(默认为系统版本)。

  • nvm list [available]
  • nvm list [available] [arch]
nvm list

4.2. 安装指定 Node.js 版本

版本号填写 latest 安装最新版本

  • npm install latest
nvm install 14.17.1

4.3. 切换到指定版本

nvm use 11 [arch] arch(可选)指定是安装 32 位还是 64 位版本(默认为系统版本)。

nvm use [version]

4.4. 卸载指定版本

nvm uninstall 14.17.1

4.5. 设置 node 和 npm 的镜像源

直接使用 nvm node_mirrornvm npm_mirror 不填写 url 可以恢复默认源

nvm node_mirror http://npm.taobao.org/mirrors/node/
nvm npm_mirror https://npm.taobao.org/mirrors/npm/

二、nvm-sh: Linux、Mac OS 等 Unix 版本

1. 下载安装
curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.38.0/install.sh | bash

或者 Wget:

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

注意后面的 v0.38.0 这是nvm的版本号,当前最新版本是v0.38.0

2. 验证安装

安装完成后关闭终端,重新打开终端输入 nvm 验证一下是否安装成功,出现 Node Version Manager,则安装成功。 在这里插入图片描述

3. 故障排除

3.1. Linux

在 Linux 上,运行安装脚本后,如果你在输入后从终端得到 command not found 或在你输入 command -v nvm 后看不到任何终端的反馈,只需关闭当前终端,打开一个新终端,然后再次尝试验证。或者,您可以在命令行上为不同的 shell 运行以下命令:

  • bash: source ~/.bashrc
  • zsh: source ~/.zshrc
  • ksh: . ~/.profile

3.2 Mac OS

如果你在运行安装脚本后出现 nvm: command not found ,则可能是以下原因之一:

  • 从 macOS 10.15 开始,默认 shell 是zshnvm 将寻找.zshrc更新,默认情况下没有安装。创建一个touch ~/.zshrc并再次运行安装脚本。
  • 如果您使用 bash(以前的默认 shell),您的系统可能没有.bash_profile设置命令的文件。创建一个touch ~/.bash_profile并再次运行安装脚本。然后,运行source ~/.bash_profile以获取nvm命令。
  • 您以前使用过bash,但您已zsh安装。您需要手动将这些行添加到~/.zshrc并运行. ~/.zshrc.
  • 您可能需要重新启动终端实例或运行. ~/.nvm/nvm.sh. 重新启动终端/打开新选项卡/窗口,或运行 source 命令将加载命令和新配置。
  • 如果以上方法没有帮助,您可能需要重新启动终端实例。尝试在终端中打开一个新选项卡/窗口并重试。

如果上述方法不能解决问题,您可以尝试以下方法:

  • 如果您使用 bash,则可能是您的 .bash_profile(或 ~/.profile)没有正确获取您的 ~/.bashrc。 您可以通过向其中添加 source ~/<your_profile_file> 或按照以下下一步操作来解决此问题。
  • 尝试将安装部分中的片段添加到您常用的配置文件(~/.bash_profile、~/.zshrc、~/.profile 或 ~/.bashrc)中,以找到正确的 nvm 目录并加载 nvm。
  • 有关此问题和解决方法的更多信息,请参阅此处

如果觉得文章写的不错,别忘了点赞和收藏,你的鼓励是我坚持的动力~~~