基于nvm安装管理多个node.js版本切换使用(附上详细安装使用图文教程+nvm命令大全)
文章目录
- 一、前言
- 二、nvm介绍
- 2.1 nvm是什么?
- 2.2 下载nvm
- 2.3 安装nvm
- 三、nvm基本使用
- 3.1 nvm切换国内镜像
- 3.2 node.js版本选择
- 3.3 node.js主要历史版本表
- 3.4 安装最新版本node.js
- 3.5 安装指定版本node.js
- 3.6 查看已安装版本
- 3.7 切换node版本
- 四、nvm命令大全
- 4.1 基础信息与帮助命令
- 4.2 版本列表与查询命令
- 4.3 Node.js 安装与卸载命令
- 4.4 版本切换与优先级命令
- 4.5 版本别名管理命令
- 4.6 路径与缓存命令
- 4.7 其他高级命令
- 4.8 nvm-windows 差异说明
一、前言
在前端开发过程中,我们常会接触各类项目,其中一些项目因所依赖的 Node.js 版本存在差异,当开发人员使用了不匹配的版本时,就可能出现各种报错或警告,严重时甚至会导致项目无法正常启动运行,本文将教大家如何使用nvm安装管理多个node.js版本切换使用。
二、nvm介绍
2.1 nvm是什么?
nvm(Node Version Manager)是一款专门用于管理 Node.js 版本的命令行工具,主要解决因不同项目依赖不同 Node.js 版本而导致的开发环境兼容问题。
其核心功能包括:
- 快速安装多个 Node.js 版本(支持指定版本号精确安装)
- 在不同版本间灵活切换(可全局切换默认版本,也可针对单个项目设置专属版本)
- 一键管理已安装的版本(查看、卸载等)
2.2 下载nvm
1、打开nvm官网:https://nvm.uihtm.com/
2、选择操作系统:window、Linux、mac
3、选择版本号:
2.3 安装nvm
1、解压安装包后,双击打开exe程序
2、选择第一个,点击next:
3、选择nvm安装路径:
4、选择nodejs路径:
5、默认全部勾选上:
6、直接点击next:
7、点击install确定安装:
8、取消勾选,然后点击Finsh:
9、打开CMD面板,输入命令 nvm ,安装成功则如下显示:
三、nvm基本使用
3.1 nvm切换国内镜像
阿里云镜像:
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 的安装路径下,找到 settings.txt 文件中复制进去然后保存。
3.2 node.js版本选择
显示可下载版本的部分列表
nvm list available
表格中的列分别代表不同类型的 Node.js 版本:
- CURRENT:当前最新的稳定版本,包含最新特性
- LTS:长期支持版本(Long Term Support),适合生产环境,会获得较长时间的维护和更新
- OLD STABLE:旧的稳定版本
- OLD UNSTABLE:旧的不稳定版本(早期 Node.js 版本区分稳定与不稳定分支,现在已不采用这种方式)
例如:
- 最新的当前版本是 24.6.0
- 最新的 LTS 版本是 22.18.0
- 最旧的列表版本可以追溯到 0.9.x 和 0.10.x 等非常早期的 Node.js 版本
命令下方提示这只是部分列表,完整版本列表可以访问 Node.js 官网:
- 官方的版本发布页面:https://nodejs.org/en/download/releases
- Node.js 官方历史版本列表:https://nodejs.org/dist/
- 阿里云镜像历史版本列表:https://registry.npmmirror.com/binary.html?path=node/
如何选择合适的版本?
-
生产环境:选择最新的LTS版本,因为它稳定且长期支持。
-
开发环境:可以尝试CURRENT版本,体验最新特性。
-
避免使用:OLD STABLEO 和 OLD UNSTABLE 版本,因为它们不再维护。
3.3 node.js主要历史版本表
说明:LTS状态标注为“是”,代表当前版本处于Active LTS(活跃长期支持) 或Maintenance LTS(维护长期支持) 阶段;标注为“否”,代表版本已进入End-of-life(生命周期结束,停止官方维护) 或未进入LTS阶段(如Current版本)
Node.js 版本号 | 发布时间 | 主要特性 | LTS 状态 | LTS 截止日期 |
---|---|---|---|---|
v24.0.0 | 2025年5月6日 | V8引擎升级到13.6版本,支持Float16Array、显式资源管理;npm升级至11;URLPattern成全局对象 | 否 | 未到LTS阶段 |
v22.0.0 | 2024年4月24日 | 支持实验性Transform Types;默认启用模块语法检测;Buffer性能优化 | 是 | 未公布 |
v20.0.0 | 2023年4月18日 | 优化诊断工具、流处理;提升内置安全功能 | 是 | 2026年4月 |
v18.0.0 | 2022年4月19日 | 支持Web Streams API、fetch API;增强国际化能力 | 否 | 2025年4月30日 |
v16.0.0 | 2021年4月20日 | V8引擎升级;提升国际化功能;增强HTTP/2性能 | 否 | 2024年4月 |
v14.0.0 | 2020年4月21日 | 提升V8引擎性能;增强流处理和诊断工具功能 | 否 | 2023年4月30日 |
v12.0.0 | 2019年4月23日 | 原生支持ES模块(ESM);改进诊断报告功能 | 否 | 2022年4月30日 |
v10.0.0 | 2018年4月24日 | 支持ES模块.mjs实验;优化异步迭代器性能 | 否 | 2021年4月6日 |
v8.0.0 | 2017年5月30日 | 支持HTTP/2;支持async/await语法;提升异步编程简洁性 | 否 | 2019年12月17日 |
3.4 安装最新版本node.js
安装最新版本:
nvm install latest
3.5 安装指定版本node.js
使用 nvm install + 版本号
命令来安装表格中的任何版本,例如:
nvm install 19.0.0
3.6 查看已安装版本
查看目前已经安装的版本:
nvm list
nvm ls
3.7 切换node版本
使用指定版本的node.js :
nvm use + 版本号
查看当前使用的node.js版本:
node -v
这时输入nvm list
发现在启用的 node 版本前面有 * 标记,这时就可以使用 node.js:
四、nvm命令大全
以下是 nvm(Node Version Manager)的完整命令大全,涵盖所有可用命令及详细说明,适用于 macOS/Linux 系统(nvm-windows 命令略有差异,差异点会特别标注):
4.1 基础信息与帮助命令
命令 | 功能描述 |
---|---|
nvm --version | 显示当前 nvm 的版本号 |
nvm help | 列出所有 nvm 命令及详细用法(最权威的查询方式) |
nvm --help | 同 nvm help ,显示命令帮助 |
4.2 版本列表与查询命令
命令 | 功能描述 |
---|---|
nvm ls | 列出本地已安装的所有 Node.js 版本,当前使用版本会标 -> ,默认版本标 default |
nvm ls <版本号> | 检查指定版本是否已安装(如 nvm ls 20.10.0 ) |
nvm ls-remote | 列出远程仓库中所有可安装的 Node.js 版本(包括 LTS 和 Current 版本) |
nvm ls-remote --lts | 仅列出远程仓库中所有 LTS 版本 |
nvm ls-remote <版本前缀> | 过滤显示指定前缀的版本(如 nvm ls-remote v18 只显示 v18.x 系列) |
nvm current | 显示当前终端正在使用的 Node.js 版本 |
4.3 Node.js 安装与卸载命令
命令 | 功能描述 |
---|---|
nvm install <版本号> | 安装指定版本的 Node.js(版本号可精确到 patch 级,如 nvm install 20.10.0 ) |
nvm install lts | 安装最新的 LTS(长期支持)版本 |
nvm install lts/<代号> | 安装指定代号的 LTS 版本(如 nvm install lts/iron 安装 v20 系列,Iron 是 v20 代号) |
nvm install latest | 安装最新的 Current 版本(非 LTS,通常为奇数版本) |
nvm install node | 同 nvm install latest ,安装最新的 Current 版本 |
nvm install <版本号> --reinstall-packages-from=<旧版本> | 安装新版本时,自动迁移旧版本的全局 npm 包(如 nvm install 20 --reinstall-packages-from=18 ) |
nvm install <版本号> --skip-default-packages | 安装版本时,不自动安装 .nvm/default-packages 中指定的默认包 |
nvm uninstall <版本号> | 卸载指定的 Node.js 版本(如 nvm uninstall 16.20.2 ) |
4.4 版本切换与优先级命令
命令 | 功能描述 |
---|---|
nvm use <版本号> | 切换到指定版本(仅当前终端生效,如 nvm use 20 ) |
nvm use lts | 切换到最新的 LTS 版本(当前终端生效) |
nvm use lts/<代号> | 切换到指定代号的 LTS 版本(如 nvm use lts/gallium 切换到 v16 系列) |
nvm use node | 切换到最新的 Current 版本(当前终端生效) |
nvm alias default <版本号> | 设置全局默认版本(新终端打开时自动使用该版本,如 nvm alias default 20.10.0 ) |
nvm alias default lts | 将最新 LTS 版本设为默认版本 |
nvm use default | 切换到全局默认版本(当前终端生效) |
4.5 版本别名管理命令
命令 | 功能描述 |
---|---|
nvm alias <别名> <版本号> | 给指定版本设置自定义别名(如 nvm alias proj1 18.18.0 ,后续可通过 nvm use proj1 切换) |
nvm alias | 列出所有已设置的别名(包括系统默认别名如 lts/* 、node 等) |
nvm unalias <别名> | 删除指定的自定义别名(如 nvm unalias proj1 ) |
4.6 路径与缓存命令
命令 | 功能描述 |
---|---|
nvm which <版本号> | 显示指定版本 Node.js 的安装路径(如 nvm which 20 输出 /Users/xxx/.nvm/versions/node/v20.10.0/bin/node ) |
nvm cache dir | 显示 nvm 缓存目录路径(用于存储下载的 Node.js 安装包) |
nvm cache clear | 清空 nvm 缓存目录(删除所有已下载的安装包) |
4.7 其他高级命令
命令 | 功能描述 |
---|---|
nvm run <版本号> <脚本> | 用指定版本的 Node.js 运行某个脚本(如 nvm run 18 app.js ) |
nvm exec <版本号> <命令> | 在指定版本环境下执行命令(如 nvm exec 20 npm install ) |
nvm install-test <版本号> | 安装指定版本并运行其内置测试(用于验证安装完整性) |
nvm get-colors | 显示 nvm 输出的颜色配置(用于终端颜色自定义) |
nvm set-colors <颜色码> | 自定义 nvm 输出的颜色(需遵循特定格式,如 nvm set-colors "yMeBg" ) |
4.8 nvm-windows 差异说明
Windows 系统的 nvm-windows 命令与原生 nvm 略有不同,主要差异点:
- 列出本地版本:
nvm list
(替代nvm ls
) - 列出远程版本:
nvm list available
(替代nvm ls-remote
) - 切换版本:
nvm use <版本号>
需以管理员权限运行终端 - 无
nvm cache
相关命令,缓存管理自动处理
所有命令均可通过 nvm help
或官方文档确认最新用法,确保与安装的 nvm 版本匹配。