当前位置: 首页 > news >正文

基于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.02025年5月6日V8引擎升级到13.6版本,支持Float16Array、显式资源管理;npm升级至11;URLPattern成全局对象未到LTS阶段
v22.0.02024年4月24日支持实验性Transform Types;默认启用模块语法检测;Buffer性能优化未公布
v20.0.02023年4月18日优化诊断工具、流处理;提升内置安全功能2026年4月
v18.0.02022年4月19日支持Web Streams API、fetch API;增强国际化能力2025年4月30日
v16.0.02021年4月20日V8引擎升级;提升国际化功能;增强HTTP/2性能2024年4月
v14.0.02020年4月21日提升V8引擎性能;增强流处理和诊断工具功能2023年4月30日
v12.0.02019年4月23日原生支持ES模块(ESM);改进诊断报告功能2022年4月30日
v10.0.02018年4月24日支持ES模块.mjs实验;优化异步迭代器性能2021年4月6日
v8.0.02017年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 --helpnvm 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 nodenvm 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 版本匹配。

http://www.dtcms.com/a/336911.html

相关文章:

  • QT第九讲- 控件委托
  • Git智能合并机制深度解析
  • ChatGPT-5 对教育行业的影响与案例研究
  • Qt笔试题
  • 录像视频删除如何恢复?手机电脑的录像恢复技巧
  • 给linux的root磁盘扩容
  • 手游搬砖对云手机的需求有哪些?
  • 机器学习实例应用
  • 获粤港澳大湾区碳足迹认证:遨游智能三防手机赋能绿色通信
  • VLN视觉语言导航(3)——神经网络的构建和优化 2.3
  • 二十八、案例-部门管理-查询
  • Android中flavor的使用
  • 项目实战——矿物识别系统(利用机器学习从化学元素数据中识别矿物,从数据到分类模型)
  • 咨询进阶——解读咨询顾问技能模型
  • NL2SQL 技术深度解析与项目实践
  • Jmeter对图片验证码的处理
  • single cell ATAC(5)使用ArchR聚类
  • CentOS 7.9 部署 filebrowser 文件管理系统
  • 深入解析 Qwen3 GSPO:一种稳定高效的大语言模型强化学习算法
  • 运维命令基础
  • 算法魅力-BFS解决多源最短路
  • PPT生成视频的AI大模型应用技巧
  • 基于51单片机霍尔测速仪表测转速调速系统设计
  • Java 大视界 -- Java 大数据在智能安防视频监控系统中的视频内容理解与智能预警升级(401)
  • Java封装
  • Orange的运维学习日记--45.Ansible进阶之文件部署
  • Rust 入门 生命周期-next2 (十九)
  • Kubernetes配置管理全攻略:ConfigMap与Secret详解
  • [机器学习]10-基于ID3决策树算法的西瓜数据集分类
  • Apache RocketMQ,构建云原生统一消息引擎