Windows 下使用 nvm 安装与管理 Node.js(完整指南)

Windows 下使用 nvm 安装与管理 Node.js(完整指南)

目录

一、准备工作

1. 卸载已有的 Node.js(重要!)

二、下载并安装 nvm-windows

1. 访问官方 GitHub 仓库

2. 下载安装包

​3. 安装 nvm

三、验证 nvm 是否安装成功

四、使用 nvm 安装 Node.js

1. 查看可安装的 Node.js 版本

2. 安装指定版本(推荐 LTS)

3. 查看已安装的版本

五、切换 Node.js 版本

六、常用 nvm 命令速查

 1、基础信息类命令

 2、安装与卸载 Node.js

安装命令

卸载命令

3、版本查看与切换

4、设置默认版本(持久生效)

5、配置镜像源(加速下载)

6、清理与维护

7、高级技巧 & 实用组合

1. 快速安装并使用 LTS 版本

2. 同时安装多个常用版本

3. 查看某个项目所需的 Node 版本(配合 .nvmrc)

4. 检查是否为 64 位版本

七、常见问题解决

❌ 问题1:nvm use 报错 “exit status 1: Access is denied.”

❌ 问题2:切换版本后 npm 命令失效

❌ 问题3:下载速度慢或失败

八、总结


在开发过程中,你可能会遇到需要同时使用多个 Node.js 版本的情况:比如一个老项目依赖 Node 16,而新项目要求 Node 20。手动反复卸载重装不仅麻烦,还容易出错。

这时,nvm(Node Version Manager) 就派上用场了!它能让你在 Windows 上轻松安装、切换和管理多个 Node.js 版本。

📌 注意:Windows 上的 nvm 并非官方版本(官方 nvm 仅支持 macOS/Linux),而是由社区维护的 nvm-windows

本文将手把手教你如何在 Windows 10/11 上安装 nvm,并用它来管理 Node.js。


一、准备工作

1. 卸载已有的 Node.js(重要!)

nvm 要求系统中不能预先安装 Node.js,否则会冲突。

卸载步骤:

  1. 打开“控制面板” → “程序和功能”
  2. 找到 Node.js,右键选择“卸载”
  3. 删除残留目录(如果存在):
    • C:\Program Files\nodejs
    • C:\Users\<你的用户名>\AppData\Local\npm
  4. 清理环境变量:
    • Win + R 输入 sysdm.cpl → “高级” → “环境变量”
    • 在“系统变量”和“用户变量”中,找到 Path
    • 删除所有包含 nodejsnpm 的路径条目
✅ 完成后重启命令提示符,输入 node -v 应提示“不是内部或外部命令”。

二、下载并安装 nvm-windows

1. 访问官方 GitHub 仓库

打开浏览器,进入:
🔗 https://github.com/coreybutler/nvm-windows/releases

2. 下载安装包

  • 找到最新版本(如 nvm-setup.zip
  • 点击下载 nvm-setup.exe(这是图形化安装程序,推荐新手使用)
⚠️ 不要下载 nvm-noinstall.zip,除非你熟悉手动配置。

3. 安装 nvm

  1. 出现安全警告时点“是”
  2. 安装向导启动:
    • 点击 Next
    • 接受许可协议 → Next
    • 点击 InstallFinish

设置 Node.js 的符号链接路径(建议设为:C:\Program Files\nodejs

💡 这个路径将作为 node 命令的入口,必须不含空格和中文

设置 nvm 安装路径(建议默认:C:\Users\admin\AppData\Local\nvm

解压(如果下载的是 zip)或直接运行 nvm-setup.exe

✅ 安装完成后,nvm 会自动配置好环境变量。


三、验证 nvm 是否安装成功

  1. 输入以下命令:

管理员身份打开 命令提示符(CMD)PowerShell

(部分操作需要管理员权限)
nvm version 

如果显示版本号(如 1.1.12),说明 nvm 安装成功!

🔍 如果提示 'nvm' 不是内部或外部命令,请检查:是否完全卸载了旧版 Node.js是否重启了终端(或重启电脑)环境变量是否包含 nvm 路径(通常安装程序会自动添加)

四、使用 nvm 安装 Node.js

1. 查看可安装的 Node.js 版本

nvm list available 

这会列出所有官方支持的 LTS 和 Current 版本。

2. 安装指定版本(推荐 LTS)

例如安装最新的 LTS 版本(如 20.12.0):

nvm install 20.12.0 

显示如下如图则安装完成

也可以只指定主版本号,nvm 会自动安装该系列的最新版:

 nvm install 18 

3. 查看已安装的版本

nvm list 

输出示例:


五、切换 Node.js 版本

使用 nvm use 命令激活某个版本:

nvm use 20.12.0 

成功后会提示:

验证当前版本:

node -v # 输出 v20.12.0 npm -v # 显示对应 npm 版本 

✅ 切换后,nodenpm 命令会自动指向所选版本。

六、常用 nvm 命令速查

 1、基础信息类命令

命令作用示例
nvm versionnvm -v查看 nvm 自身版本nvm version1.1.12
nvm help显示所有可用命令帮助nvm help
nvm root显示 nvm 的安装根目录(即 Node.js 版本存放路径)nvm rootC:\Users\Alice\AppData\Roaming\nvm

 2、安装与卸载 Node.js

安装命令
命令说明示例
nvm install <version>安装指定精确版本nvm install 20.12.0
nvm install <major>安装该主版本的最新版(自动补全)nvm install 18 → 安装 18.x 最新版
nvm install lts安装最新的 LTS(长期支持)版本nvm install lts
nvm install latest安装最新的 Current(开发版)版本nvm install latest
✅ 安装时会自动下载并解压到 nvm root 目录下的对应版本文件夹。
卸载命令
命令说明示例
nvm uninstall <version>卸载指定版本(不能卸载当前正在使用的版本)nvm uninstall 16.14.0
nvm uninstall <major>卸载该主版本的所有子版本(不推荐)❌ 通常不支持,需指定完整版本号
⚠️ 注意:必须先 nvm use 切换到其他版本,才能卸载当前版本。

3、版本查看与切换

命令说明示例
nvm listnvm ls列出本地已安装的所有 Node.js 版本显示:
* 20.12.0 (当前)
18.17.0
nvm list availablenvm ls available列出所有官方可安装的版本(含 LTS/Current 标记)显示远程版本列表
nvm use <version>临时切换到指定版本(仅当前终端会话有效)nvm use 18.17.0
nvm use <major>切换到该主版本的已安装最新子版本nvm use 18
nvm current显示当前正在使用的 Node.js 版本nvm currentv20.12.0
✅ 切换成功后,node -vnpm -v 会立即反映新版本。

4、设置默认版本(持久生效)

命令说明示例
nvm alias default <version>设置默认启动版本(新终端自动激活)nvm alias default 20.12.0
nvm alias查看所有别名(包括 default)输出:
default -> 20.12.0
nvm unalias default删除默认别名(不推荐)
💡 设置默认版本后,每次打开新的 CMD/PowerShell,都会自动使用该版本,无需手动 nvm use

5、配置镜像源(加速下载)

nvm 默认从官方 nodejs.org 下载,国内用户可能很慢。可通过修改配置文件启用国内镜像。

步骤:

  1. 找到 nvm 安装目录
  2. 编辑 settings.txt 文件(若不存在则新建)
  3. 添加以下两行:
node_mirror: https://npmmirror.com/mirrors/node/ npm_mirror: https://npmmirror.com/mirrors/npm/ 
✅ 保存后,后续 nvm install 将自动从淘宝 NPM 镜像(npmmirror.com)下载,速度大幅提升!

6、清理与维护

命令说明
手动删除旧版本进入 nvm root 目录,直接删除不需要的版本文件夹(如 v16.14.0
清理 npm 缓存(可选)npm cache clean --force(每个 Node 版本有独立缓存)
重置 PATH(故障排查)如果 node 命令失效,检查 C:\Program Files\nodejs 是否在系统 PATH 中,并确保它是 nvm 创建的符号链接

7、高级技巧 & 实用组合

1. 快速安装并使用 LTS 版本
nvm install lts nvm use lts nvm alias default lts 
2. 同时安装多个常用版本
nvm install 18 nvm install 20 nvm install 22 
3. 查看某个项目所需的 Node 版本(配合 .nvmrc

如果项目根目录有 .nvmrc 文件(内容如 18.17.0),可快速切换:

nvm use 
⚠️ 注意:nvm-windows 不原生支持 .nvmrc 自动读取,但你可以手动执行:
nvm use $(cat .nvmrc) 

(在 PowerShell 中需用 Get-Content .nvmrc

4. 检查是否为 64 位版本

nvm-windows 默认安装 64 位。可通过以下命令确认:

node -p "process.arch" 

输出应为 x64


七、常见问题解决

❌ 问题1:nvm use 报错 “exit status 1: Access is denied.”

原因:权限不足,无法创建符号链接。

解决方法

  • 管理员身份运行 CMD 或 PowerShell
  • 或在安装 nvm 时,确保目标路径(如 C:\Program Files\nodejs)有写入权限

❌ 问题2:切换版本后 npm 命令失效

原因:npm 是随 Node.js 一起安装的,每个版本自带独立的 npm。

解决方法

  • 确保使用 nvm use 正确切换
  • 不要手动修改 PATH 中的 npm 路径

❌ 问题3:下载速度慢或失败

解决方法:配置国内镜像(需手动修改 nvm 设置文件)

  1. 打开 nvm 安装目录(C:\Users\admin\AppData\Local\nvm)
  2. 保存后重新安装即可加速

编辑 settings.txt,添加:

node_mirror: https://npmmirror.com/mirrors/node/ npm_mirror: https://npmmirror.com/mirrors/npm/ 

八、总结

通过 nvm-windows,你可以在 Windows 上:

  • 轻松安装多个 Node.js 版本
  • 一键切换项目所需的运行环境
  • 避免版本冲突和重复安装的烦恼

这对于前端开发者、全栈工程师或参与多个项目的团队成员来说,是必备的开发利器

🎯 最佳实践建议:日常开发使用 LTS 版本(如 18、20、22)用 nvm alias default 设置主力版本定期清理不用的旧版本:nvm uninstall 16.14.0

现在,你已经掌握了在 Windows 上用 nvm 管理 Node.js 的全部技能!快去试试吧!

如有疑问,欢迎留言交流。祝你开发顺利!💻✨


附:nvm-windows 官方 GitHub:https://github.com/coreybutler/nvm-windowsNode.js 官网:https://nodejs.org国内镜像站(npmmirror):https://npmmirror.com

Read more

黑马点评完整代码(RabbitMQ优化)+简历编写+面试重点 ⭐

黑马点评完整代码(RabbitMQ优化)+简历编写+面试重点 ⭐

简历上展示黑马点评 完整代码地址 微服务学成在线项目 前言 当初就是当作一个学习笔记和个人面试记录发的,没想到这么多人收藏浏览,还是感慨学Java的人确实多啊。 适合什么人看呢,我仅仅说说我个人的理解,因为我现在也是个经历秋招的双非学生。 1.初学者学习完Redis基础,想来个实战,黑马点评还是特别好的一个项目,基本包含了所有数据类型的运用和redis其他功能的扩展,这篇文章可以带你提炼重点,很好的走下流程。 2.但大部分人是冲着找实习和秋招去的,像我这种学历不高的秋招就不要写黑马点评了,即使包装,也会很容易看出来,我找实习的时候就被面试官问到这是不是黑马点评过,我们可以把其中的闪光点迁移到你找的其他项目中,比如缓存穿透雪崩击穿的解决方法,redisson分布式锁解决一人一单,这种在大多项目中都可以添加,自圆其说就行。 3.对于找实习的像大二,大三上的,想找个小厂试试手垂直向上升的,可以吃透它,面试官问你遇到的困难或者是你觉得难点,就可以重点讲一人一单这个解决方法和流程,越详细越好。 4.前提是大家不用直接用这套模板,太多人用了,这也是我从网上找的别人的,巧用AI让它改改项

By Ne0inhk
PostgreSQL动态分区裁剪技术:查询性能优化解析(2026年版)

PostgreSQL动态分区裁剪技术:查询性能优化解析(2026年版)

PostgreSQL动态分区裁剪技术:从原理到实战的查询性能优化 一、引言 1.1 研究背景与意义 随着企业数据量从TB级向PB级演进,数据库管理系统面临着严峻的挑战。PostgreSQL作为一款功能强大的开源关系型数据库,凭借其高度的可扩展性和标准兼容性,在金融、电商、物联网等领域得到了广泛应用。然而,在处理海量数据时,如何通过分区裁剪技术精准定位目标数据,避免无关分区的无效扫描,已成为查询性能优化的关键突破口。 在实际应用中,许多场景对查询性能有着极高要求。以电商行业为例,订单数据量庞大,每天可能产生数百万甚至数千万条订单记录。在进行订单查询、统计分析等操作时,如果不能有效利用分区裁剪技术,查询可能会耗费大量时间,严重影响用户体验。又如在金融领域,交易数据的实时查询对于风险控制至关重要,动态分区裁剪技术能够帮助金融机构快速获取所需数据。 1.2 研究目标与范围 本文旨在深入研究PostgreSQL声明式分区表的动态裁剪机制,通过结合源码分析与实际案例,系统地阐述其实现原理、优化策略及性能影响因素。研究目标包括: * 从源码层面深入剖析动态分区裁剪的实现原理 *

By Ne0inhk
Spring Boot 数据访问与数据库集成

Spring Boot 数据访问与数据库集成

Spring Boot 数据访问与数据库集成 18.1 学习目标与重点提示 学习目标:掌握Spring Boot数据访问与数据库集成的核心概念与使用方法,包括Spring Boot数据访问的基本方法、Spring Boot与MySQL的集成、Spring Boot与H2的集成、Spring Boot与MyBatis的集成、Spring Boot与JPA的集成、Spring Boot的事务管理、Spring Boot的实际应用场景,学会在实际开发中处理数据库访问问题。 重点:Spring Boot数据访问的基本方法、Spring Boot与MySQL的集成、Spring Boot与H2的集成、Spring Boot与MyBatis的集成、Spring Boot与JPA的集成、Spring Boot的事务管理、Spring Boot的实际应用场景。 18.2 Spring Boot数据访问概述 Spring Boot数据访问是指使用Spring Boot进行数据库操作的方法。 18.2.1 数据访问的定义

By Ne0inhk
【MYSQL】MYSQL学习的一大重点:MYSQL库的操作

【MYSQL】MYSQL学习的一大重点:MYSQL库的操作

🎬 个人主页:艾莉丝努力练剑 ❄专栏传送门:《C语言》《数据结构与算法》《C/C++干货分享&学习过程记录》 《Linux操作系统编程详解》《笔试/面试常见算法:从基础到进阶》《Python干货分享》 ⭐️为天地立心,为生民立命,为往圣继绝学,为万世开太平 🎬 艾莉丝的简介: 文章目录 * 0 ~> 实际场景:创建和删除数据库 * 0.1 创建方式1 * 0.2 创建方式2 * 0.3 创建方式3 * 1 ~> 数据库的编码集 * 1.1 目前整个数据库支持的字符集 * 1.2 目前整个数据库支持的字符集 * 1.3 UTF-8需要设置配置文件 * 1.4 MySQL 中与字符集排序规则(

By Ne0inhk