前言

由于多个项目对 Node.js 的版本要求不一样,所以要在一台机器上安装多个 Node
为了解决 Node.js 各种版本存在不兼容现象;因此需要一个可管理多个 Node 的工具,也就是 NVM
安装 NVM 后,可以使用 NVM 命令下载多个版本不同的 Node 、仅需一条命令就可切换到指定版本的 Node

⚠️:此片文章基于Mac操作系统、使用终端操作



一、卸载

1. 卸载旧 node

安装 NVM 之前,需先删除原来已安装的node,卸载已安装到全局的 node/npm
如果之前是在官网下载的 node 安装包,运行后会自动安装在全局目录,其中

node 命令:在 /usr/local/bin/node
npm 命令:在全局 node_modules 目录,具体为 /usr/local/lib/node_modules/npm


我的是用 brew 下载的,所以直接使用 brew uninstall node命令即可卸载

2. 删除 node 残留

  • 删除 node 残留文件命令如下

    sudo rm -rf /usr/local/lib/node*
    sudo rm -rf /usr/local/bin/node*

  • 删除任何与 Node.js 相关的配置文件或缓存

    sudo rm -rf ~/.npm
    sudo rm -rf ~/.node-gyp

  • 检查可能存在的 Node.js 安装位置

    例如 /usr/lib 和 /usr/local/lib,并删除相关文件和文件夹
    全局搜索可能用到的命令:sudo find / -name “node” -print 2>/dev/null




二、安装

1. 安装 NVM

NVM 全英文也叫 node.js version management,是一个 Node.js 的版本管理工具。nvm 和 n 都是 Node.js 版本管理工具

NVM 能干嘛?

  • 简单的命令下载长期稳定支持版本的 Node.js
  • 简单的命令实现 Node.js 的多个版本之间轻松切换

2. 下载 NVM

本文使用 brew 安装

终端执行:brew install nvm

3. 配置 NVM

根据自己使用的 shell ,将 NVM 配置写入对应的 shell 配置文件
配置文件通常保存在用户目录下(即:/Users/xxx ),使用 cd ~/ 命令可快速跳转该目录
配置文件若不存在,则需根据使用的 shell 新建对应的配置文件

bash 对应的配置文件为 .bash_profile

echo “source $(brew --prefix nvm)/nvm.sh” >> ~/.bash_profile

zsh 对应的配置文件为 .zshrc

echo “source $(brew --prefix nvm)/nvm.sh” >> ~/.zshrc

写入配置后,还需让环境变量生效

source ~/.zshrc

4. 验证 NVM

执行命令,看到NVM的版本号,说明安装成功

➜ ~ nvm --version
0.40.1




三、版本控制

1. 安装 Node.js 版本

要安装指定的 Node.js 版本,只需运行以下命令,将 <version> 替换为你想要切换到的版本

nvm install <version>
例如,要安装 Node.js v14.17.0,可以运行:nvm install 14.17.0

错误:

执行 nvm install 14.17.0 命令一直出现问题如:Version ‘14.17.0’ not found - try nvm ls-remote to browse available version
说明以 nvm 现在用的网络是搜索不到这个版本的远程可安装镜像的
执行 nvm ls-remote 命令查看远程可安装镜像会发现看不到该版本
我们需要将 nvm 使用的网络改为国内的镜像地址

1
2
3
4
5
6
修改.zshrc文件
vim ~/.zshrc
export NVM_NODEJS_ORG_MIRROR=https://npmmirror.com/mirrors/node/

更新.zshrc文件
source ~/.zshrc

2. 切换 Node.js 版本

要切换到已安装的 Node.js 版本,只需运行以下命令,将 <version> 替换为你想要切换到的版本

nvm use <version>
例如,要安装 Node.js v14.17.0,可以运行:nvm use 14.17.0

3. 查看已安装的 Node.js 版本

nvm ls

4. 删除 Node.js 版本

nvm uninstall <version>

5. 设置默认 Node.js 版本

终端会将第一个下载的 Node.js 作为默认版本,在终端后执行 node -v 命令,可知道默认版本

➜ ~ node -v
v13.0.0

如需设置默认 node 为 12.0.0 版本,执行以下操作

  • 设置默认版本

    nvm alias default v12.0.0

  • 编辑配置 ~/.zshrc 或 ~/.bash_profile

    vim ~/.bash_profile

    将下面一行添加到配置文件末尾
    export NVM_DIR=“$HOME/.nvm”

    vim ~/.zshrc

    将下面一行添加到配置文件末尾
    export NVM_DIR=“$HOME/.nvm”

  • 保存配置

    source ~/.zshrc

  • 查看当前版本

    ➜ ~ node -v
    v12.0.0

之后每次打开终端的时候就默认是 node 12.0.0 版本了



四、常用命令

  • nvm ls :列出所有已安装的 node 版本

  • nvm ls-remote :列出所有远程服务器的版本(官方node version list)

  • nvm list :列出所有已安装的 node 版本

  • nvm list available :显示所有可下载的版本

  • nvm install stable :安装最新版 node

  • nvm install [node版本号] :安装指定版本 node

  • nvm uninstall [node版本号] :删除已安装的指定版本

  • nvm use [node版本号] :切换到指定版本 node

  • nvm current :当前 node 版本

  • nvm alias [别名] [node版本号] :给不同的版本号添加别名

  • nvm unalias [别名] :删除已定义的别名

  • nvm alias defau``lt [node``版本号] :设置默认版本





借鉴链接

mac 用brew安装nvm
使用NVM管理Node.js的版本教程



声明

借鉴部分均注明了原文出处,可在文章的`借鉴链接`处获取原文出处
文中若内容有涉及原版权,请邮件联系elvin-chen@qq.com,涉及的相关文章或内容将会及时更改或取消发布