NVM介绍
NVM:Node Version Manage,即Node的版本管理工具。使用NVM,可以很方便地在多个NodeJS版本之间进行切换。
由于项目开发当中,不同的项目可能依赖不同版本的NodeJS,这种情况下,NodeJS版本的切换将会是一件非常麻烦的事情。因此,使用NVM管理NodeJS版本就显得尤为重要。
安装NVM
下载安装包
在GitHub上下载NVM的安装包。
下载地址:https://github.com/coreybutler/nvm-windows/releases
nvm-noinstall.zip :绿色免安装版,但使用时需进行配置。
nvm-setup.zip :安装版zip格式
- nvm-setup.exe: 非压缩安装版,推荐使用
注:本例中选用的是截至2023年3月2日最新版本的NVM安装包,版本号为1.1.10。
安装NVM
:::: warning 注意:
安装NVM前,建议先卸载电脑上现有的NodeJS,避免冗余引起冲突。
::::
双击nvm-setup.exe文件,进行NVM的安装。
接受协议,下一步。
选择NVM的安装路径。可以按照个人习惯,自行选择安装路径。
- 选择NodeJS的Symlink (符号链接)文件夹的位置,用于生成NodeJS的映射目录。
:::: warning 注意:
安装前,需确保Symlink文件夹所在的路径不存在,否则可能安装失败。
::::
- 点击安装,等待安装完成。
配置环境变量
打开高级系统设置->环境变量,可以发现,安装成功后,NVM已经自动帮我们配置了环境变量NVM_HOME和NVM_SYMLINK,并且配置了Path的值。
接下来给PATH增加如下环境变量:
C:\APP\nodejs\node_global
:::: info 注:若使用的是免安装版的NVM,可以按照如下方式手动配置环境变量。
添加变量名NVM_HOME
变量的值为NVM所在的根路径(以本例为例,路径为:C:\APP\nvm);
添加变量名NVM_SYMLINK
变量的值为NodeJS的Symlink 文件夹的位置(以本例为例,路径为:C:\APP\NodeJS);
设置变量path值
在用户变量(或系统变量)的path当中添加三个值:
%NVM_HOME%;%NVM_SYMLINK%;C:\APP\nodejs\node_global;
::::
配置下载代理镜像(可选)
安装完成后,可以在NVM安装根目录下的setting.txt文件中,配置NodeJS下载代理镜像,解决在线安装NodeJS时速度慢的问题。
注:可以后续通过命令方式设置镜像,此步骤可以省略。
root: C:\APP\nvm
path: C:\APP\nodejs
arch: 64
proxy: none
node_mirror: http://npm.taobao.org/mirrors/node/
npm_mirror: https://npm.taobao.org/mirrors/npm/
验证NVM安装
安装完成后,打开命令行窗口,输入 nvm -v
,出现版本号即表示安装成功。
安装NodeJS
在线安装
查看NodeJs可安装版本
使用NVM命令 nvm list available,查看可安装的NodeJS版本。建议选择LTS中的版本进行安装(LTS,即Long Term Support,长期支持版本)
nvm list available
若要查看完整的可安装版本列表,可访问官网:https://nodejs.org/en/download/releases
安装对应NodeJS
使用NVM命令nvm install,进行对应版本NodeJS的在线安装。
nvm install 18.14.2
如果还需要安装其他版本的NodeJS,可以继续执行nvm install 命令
nvm install 16.14.2
离线安装
下载离线安装包
从官网下载指定版本NodeJS的免安装版离线安装包
找到对应版本,点击下载指定版本NodeJS的免安装版离线安装包即可(同样推荐下载LTS版本)
本例中是Windows 10 64位操作系统,因此选择的是node-v14.21.3-win-x64.zip。
解压安装
将指定版本的NodeJS免安装版离线安装包,解压后放入到NVM安装路径的根目录下,即可完成离线安装。
版本管理及切换
查看已安装版本
通过nvm list命令查看当前已安装的所有NodeJS版本
nvm list
切换版本
通过nvm use 版本号
的形式来切换当前生效的NodeJS版本
nvm use 16.14.2
查看当前生效版本
通过nvm list
或 nvm ls
查看当前生效的NodeJS版本
修改NodeJS模块配置
创建目标文件夹
cd C:\APP\nodejs
mkdir node_cache
mkdir node_global
执行命令修改
依次执行如下命令,更改目标文件夹配置,注意修改为自己的路径
npm config set prefix "C:\APP\nodejs\node_global"
npm config set cache "C:\APP\nodejs\node_cache"
配置镜像加速
配置自定义镜像
为了提升速度,可以为NodeJS配置自定义的镜像,命令如下:
# 该地址已失效 npm config set registry=http://registry.npm.taobao.org
npm config set registry https://registry.npmmirror.com
warning 提示
原淘宝镜像地址**registry.npm.taobao.org**
已于2024年1月22日过期,
继续使用原镜像地址,在使用npm下载依赖时会报错提示certificate has expired
所以更换为最新的地址https://registry.npmmirror.com
info 其他镜像地址
名称 地址 npm 官方原始镜像 https://registry.npmjs.org/ 淘宝最新 NPM 镜像 https://registry.npmmirror.com 阿里云 NPM 镜像 https://npm.aliyun.com 腾讯云 NPM 镜像 华为云 NPM 镜像 https://mirrors.huaweicloud.com/repository/npm/ 网易 NPM 镜像 https: //mirrors.163.com/npm/ 中科院大学开源镜像站 http://mirrors.ustc.edu.cn/ 清华大学开源镜像站 https://mirrors.tuna.tsinghua.edu.cn/
检查配置信息
配置完成后,输入如下命令,我们检查所有的配置信息
npm config list
image.png
查看镜像地址配置
npm config get registry
重新安装NPM
重新执行命令安装npm
为了避免尝试全局安装软件包时看到EACCES错误等权限问题,要使用节点版本管理器重新安装npm。
以管理员身份运行如下命令:
npm install npm -g
配置环境变量
设置NODE_PATH
由于默认的模块C:\APP\nodejs\node_modules 目录已经变为
C:\APP\nodejs\node_global\node_modules 目录,如果直接运行npm install等命令会报错的。
所以需要增加环境变量NODE_PATH 内容是:
C:\APP\nodejs\node_global\node_modules
设置PATH
添加用户变量中 PATH 的值:
C:\APP\nodejs\node_global
NVM的常用命令
nvm off // 禁用node.js版本管理(不卸载任何东西)
nvm on // 启用node.js版本管理
nvm install <version> // 安装node.js的命名 version是版本号 例如:nvm install 8.12.0
nvm uninstall <version> // 卸载node.js是的命令,卸载指定版本的nodejs,当安装失败时卸载使用
nvm ls // 显示所有安装的node.js版本
nvm list // 显示本地已经安装的所有node.js的版本
nvm list available // 显示所有可以供安装的所有node.js的版本
nvm use <version> // 切换到使用指定的nodejs版本
nvm v // 显示nvm版本
nvm install stable // 安装最新稳定版
nvm node_mirror <node_mirror_url> //设置node的镜像,官方推荐https://npmmirror.com/mirrors/node/
nvm npm_mirror <npm_mirror_url> //设置npm的镜像,官方推荐https://npmmirror.com/mirrors/npm/