目标

  1. 安装 nvm 工具。
  2. 通过 nvm 可安装和自由切换多种版本的 NodeJs .

nvm是什么

nvm全英文也叫node.js version management,是一个nodejs的版本管理工具。nvm和n都是node.js版本管理工具,为了解决node.js各种版本存在不兼容现象可以通过它可以安装和切换不同版本的node.js。

nvm常用命令

nvm v #查看nvm版本  (我的是1.1.7)
nvm install latest #安装最新版 NodeJs 版本
nvm install v0.10.30 #安装指定的 NodeJs 版本
nvm list    #查看已安装的NodeJs版本
nvm use v0.10.30    #切换 NodeJs 版本
nvm alias default v0.10.30 #设置默认版本
nvm root 查看或设置目录 ,用于存储不同版本的nodejs

使用nvm工具在多个nodeJs版本之间切换

  • nvm use 18.18.0
  • nvm use 17.1.0
  • nvm use 12.22.7
  • nvm use 12.13.1
  • nvm use 10.7.0
  • nvm use 8.17.0

使用nvm卸载多个版本的nodeJs

  • nvm uninstall v18.18.0
  • nvm uninstall  12.22.7
  • nvm uninstall 12.13.1
  • nvm uninstall 10.7.0
  • nvm uninstall 8.17.0

使用nvm安装多个版本的nodeJs

  • nvm install 18.18.0
  • nvm install 12.22.7
  • nvm install 12.13.1
  • nvm install 10.7.0
  • nvm install 8.17.0

Windows下 安装nvm管理多版本node

安装nvm

先把之前本地安装的node js卸载删了。

下载nvm nvm-setup.exe,可使用nvm-setup.exe安装多个版本的node。

在Set Node.js Symlink这一步设置好存放nodejs程序的目录:如我的目录是  C:\nodejs  ,实际是在   C:\Users\zhaolei\AppData\Roaming\nvm 目录

安装的目录

我的Win10虚拟机上,核心配置文件 C:\Users\zhaolei\AppData\Roaming\nvm\settings.txt    C:\Users\WIN10\AppData\Roaming\nvm

  • root: C:\Users\zhaolei\AppData\Roaming\nvm
  • path: C:\nodejs

我的微星笔记上,核心配置文件  C:\Users\WIN10\AppData\Roaming\nvm  (如果做了一半失败,可以此目录删除某个版本的文件夹)

  • root: C:\Users\WIN10\AppData\Roaming\nvm
  • path: C:\Program Files\nodejs

升级nvm 1.1.7 → 1.1.11

2023-10做的升级 ,为什么要升级?答:因为 nvm 1.1.7 版本导致安装v18的Node有问题,npm -v报错 Unexpected token ‘.‘    ,升级就可解决,真的解决了。

源码官网: https://github.com/coreybutler/nvm-windows 下载最新的1.1.11版本

下载   nvm-setup.exe, 安装它。

安装后, 旧版本1.1.7 版本的配置全丢失了, 请按下文再配置一遍。

解决Windows下使用nvm安装node时npm下载失败(要执行)

我采用nvm-setup安装windows版本的nvm

nvm安装node出现的问题:node成功了,npm没成功,表现是:解决:在nvm 安装了node之后,输入npm找不到该命令,当时安装报错如下:

所以最好还是在nvm文件夹下settings里配置一下node和npm的安装地址,这样nvm安装node和npm时直接从淘宝镜像下载,可能就不会出错了。

settings.txt 后面加两行:

C:\Users\zhaolei\AppData\Roaming\nvm\settings.txt
C:\Users\WIN10\AppData\Roaming\nvm\settings.txt  (微星笔记本)

淘宝

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

命令行切换(注意:请切换国内镜像后再安装node版本,否则会很慢)

阿里云镜像

命令:nvm npm_mirror https://npmmirror.com/mirrors/npm/
命令:nvm node_mirror https://npmmirror.com/mirrors/node/

腾讯云镜像

命令:nvm npm_mirror http://mirrors.cloud.tencent.com/npm/
命令:nvm node_mirror http://mirrors.cloud.tencent.com/nodejs-release/

常用问题的解决(要执行)

安装NVM之后,NODE -V 提示'NODE' 不是内部或外部命令,也不是可运行的程序 或批处理文件

  1. 来到这一步,就需要打开nvm这个文件夹了,我的是在这个位置:C:\Users\Administrator\AppData\Roaming\nvm,在nvm下面建一个文件夹nodejs,这个nodejs文件夹下面不要放任何东西,保持为空即可。
  2. 然后打开控制面板—高级系统设置—高级--环境变量,将红色圈圈部分变量值设置为刚才nodejs文件夹所在位置
  3. 设置好之后请务必关掉终端后,再打开。总之一定要重新进cmd
  4. 此时,进到终端执行node -v  我就问题就解决了。 如果你还未解决,此时需要先  nvm uninstall v10.15.3(上面示例里安装的nodejs),也就是最好卸载掉之前用nvm安装的node,然后再重新安装你所需要的各种版本的node。
  5. 安装好node后,别忘了nvm use [your node version]。
  6. 此时执行node -v,就正常显示版本了。

NVM_HOME=C:\Users\WIN10\AppData\Roaming\nvm
NVM_SYMLINK=C:\Users\WIN10\AppData\Roaming\nvm\nodejs   修改为这个值

安装nvm管理多版本node for Linux

安装

下载压缩包

github你应该访问不了,也可手动下载,上传到服务器上。
cd ~
curl -O https://github.com/nvm-sh/nvm/archive/refs/tags/v0.39.5.tar.gz
或
wget https://github.com/nvm-sh/nvm/archive/refs/tags/v0.39.5.tar.gz

解压

mkdir -p /usr/local/nvm
tar -zxvf nvm-0.39.5.tar.gz -C /usr/local/nvm

配置环境

修改“全体用户级”环境就是文件/etc/profile

vi /etc/profile

在/etc/profile 的末尾,添加如下语句:

export NVM_DIR="/usr/local/nvm/nvm-0.39.5"
[ -s "$NVM_DIR/nvm.sh" ] && \. "$NVM_DIR/nvm.sh"  # This loads nvm
[ -s "$NVM_DIR/bash_completion" ] && \. "$NVM_DIR/bash_completion"  # This loads nvm bash_completion


# 在最后为nvm添加淘宝镜像
export NVM_NODEJS_ORG_MIRROR=https://npm.taobao.org/mirrors/node/
export NVM_IOJS_ORG_MIRROR=http://npm.taobao.org/mirrors/iojs

使能配置

source /etc/profile

查看NVM版本

nvm v

成功

配置镜像

nvm node_mirror [url] :设置node镜像。默认是 https://nodejs.org/dist/。如果不写url,则使用默认url。设置后可至安装目录settings.txt文件查看,也可直接在该文件操作。

nvm npm_mirror [url] :设置npm镜像。 https://github.com/npm/cli/archive/。如果不写url,则使用默认url。设置后可至安装目录settings.txt文件查看,也可直接在该文件操作。


npm与node js的版本匹配


资料

nvm-windows源码网址: https://github.com/coreybutler/nvm-windows (2023年10月最新版是1.1.11)

NVM For Linux 源码网址: https://github.com/nvm-sh/nvm (2023年10月最新版是0.39.5)

NVM中文网 https://nvm.uihtm.com/