什么是NVM

nvm允许您通过命令行快速安装和使用不同版本的NodeJS。

在日常开发前端的项目中,经常会遇到不同的项目需要使用不同的NodeJS版本,其实无关NodeJS本身,大多时候都依赖的问题,引入的依赖通常会使用不同版本的NodeJS来开发,这里才会导致在项目初期使用npm install的时候出现各种灵异的安装依赖问题,导致项目无法正常启动。通过使用nvm我们便可以快速的切换各个版本的NodeJS,从而避免了以下的情况:A项目使用NodeJS-16.xx.xx的版本,而在开发B项目的时候使用NodeJS-12.xx.xx的版本,这个时候我们在开发B项目的时候就无需再去卸载NodeJS-16.xx.xx的版本后,再去安装NodeJS-12.xx.xx的版本了。

例子

$ nvm use 16
Now using node v16.9.1 (npm v7.21.1)
$ node -v
v16.9.1
$ nvm use 14
Now using node v14.18.0 (npm v6.14.15)
$ node -v
v14.18.0
$ nvm install 12
Now using node v12.22.6 (npm v6.14.5)
$ node -v
v12.22.6

就是这么简单!

安装

安装环境

这里我们使用的是Win10的操作系统演示。

下载安装包

下载NVM的安装包,地址:https://github.com/coreybutler/nvm-windows/releases ,选择下载 nvm-setup.exe

安装NVM

一路点击下一步,直至安装完成。

验证

安装完成后,输入以下指令验证是否安装成功:nvm version,出现版本号即表示安装成功。

PS C:\Users\liaoy\WebstormProjects\inifitness-tenant> nvm version
1.1.9

使用

在线安装NodeJS

1. 查看版本号

这里我们提供两种查看可安装NodeJS版本的方法

  • 通过nvm查看NodeJS历史版本号

    使用命令:nvm list available

    PS C:\Users\liaoy\WebstormProjects\inifitness-tenant> nvm list available                                                                          
    
    |    18.5.0    |   16.15.0    |   0.12.15    |   0.11.13    |
    |    18.4.0    |   16.14.2    |   0.12.14    |   0.11.12    |
    |    18.3.0    |   16.14.1    |   0.12.13    |   0.11.11    |
    |    18.2.0    |   16.14.0    |   0.12.12    |   0.11.10    |
    |    18.1.0    |   16.13.2    |   0.12.11    |    0.11.9    |
    |    18.0.0    |   16.13.1    |   0.12.10    |    0.11.8    |
    |    17.9.1    |   16.13.0    |    0.12.9    |    0.11.7    |
    |    17.9.0    |   14.20.0    |    0.12.8    |    0.11.6    |
    |    17.8.0    |   14.19.3    |    0.12.7    |    0.11.5    |
    |    17.7.2    |   14.19.2    |    0.12.6    |    0.11.4    |
    |    17.7.1    |   14.19.1    |    0.12.5    |    0.11.3    |
    |    17.7.0    |   14.19.0    |    0.12.4    |    0.11.2    |
    |    17.6.0    |   14.18.3    |    0.12.3    |    0.11.1    |
    |    17.5.0    |   14.18.2    |    0.12.2    |    0.11.0    |
    |    17.4.0    |   14.18.1    |    0.12.1    |    0.9.12    |
    |    17.3.1    |   14.18.0    |    0.12.0    |    0.9.11    |
    |    17.3.0    |   14.17.6    |   0.10.48    |    0.9.10    |
    
    This is a partial list. For a complete list, visit https://nodejs.org/en/download/releases
    
    
  • 通过NodeJS官网查看版本号

    若要查看完整的可安装版本列表,可访问官网:https://nodejs.org/en/download/releases

2. 安装NodeJS

这里我们通过以下指令对应版本NodeJS的在线安装:nvm install

PS C:\Users\liaoy\WebstormProjects\inifitness-tenant> nvm install 17.9.1
Downloading node.js version 17.9.1 (64-bit)...
Extracting...
Complete

离线安装NodeJS

1. 下载NodeJS

从官网下载指定版本安装包,地址:https://nodejs.org/en/download/releases

image-20220906103123169

image-20220906103251503

这里以9.11.2的版本演示,下载该64位(当前系统为Win10 64位)安装包

2. 安装NodeJS

  • 查看nvm安装路径:
C:\Users\liaoy>where nvm
C:\Users\liaoy\AppData\Roaming\nvm\nvm.exe
  • node-v9.11.2-win-x64.zip解压至C:\Users\liaoy\AppData\Roaming\nvm

  • 修改目录名称,将解压的目录名称改为跟其他目录一致的格式(注意:这里 必须要修改目录名称! 否则新安装的版本号会是0.0.0版本)

image-20220906104123106

查看已安装的NodejS

使用以下命令查看已安装的NodeJS版本:

C:\Users\liaoy>nvm ls

    18.5.0
    17.9.1
    16.17.0
    15.9.0
    14.20.0
    13.14.0
  * 12.12.0 (Currently using 64-bit executable)
    11.15.0
    10.12.0
    9.11.2

切换NodeJS版本

使用以下命令切换已安装的NodeJS版本:

C:\Windows\system32>nvm use 9.11.2
Now using node v9.11.2 (64-bit)

注意 这里需要以管理员身份运行命令行提示符,否则会报如下错误:

C:\Users\liaoy>nvm use 9.11.2
exit status 5: �ܾ����ʡ�

exit status 1: ���ļ��Ѵ���ʱ���޷��������ļ���

当出现Now using node v9.11.2 (64-bit)字样的时候就说明NodeJS的版本切换成功了

这个时候我们查看下NodeJS的版本来校验一下是否切换成功

C:\Windows\system32>node -v
v9.11.2

NVM常用指令

  • 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 default [node版本号] :设置默认版本

切换NVM镜像源

在使用nvm的过程中,我们通常会用到nvm list availablenvm install命令,但是在执行的过程中速度可能会非常慢,这个时候我们可以通过切换镜像源的方式来加速一下,只需如下三步:

  1. 找到nvm安装目录:

    C:\Users\liaoy>where nvm
    C:\Users\liaoy\AppData\Roaming\nvm\nvm.exe
    
  2. 进入安装目录,找到setting.txt文件编辑,在文本最后追加两行:

    node_mirror:  https://npmmirror.com/mirrors/node/
    npm_mirror: https://npmmirror.com/mirrors/npm/
    
  3. 最终文本内容如下:

    root: C:\Users\liaoy\AppData\Roaming\nvm
    path: C:\Program Files\nodejs
    node_mirror:  https://npmmirror.com/mirrors/node/
    npm_mirror: https://npmmirror.com/mirrors/npm/