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

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

f12网络教程 客户端 服务端 服务器前端 后端

文章目录 * 客户端 服务端 服务器 前端 后端 * 客户端(Client)——通信角色 * 请求发给谁了?所有客户端发请求时,请求的链接一定有 IP 和端口。 * url里有 IP → 直接用,没有 IP → 调用 DNS 查域名 → 得到 IP * 服务端(Server)--通信角色 * 服务器 程序运行的机器 * 前端(Front-end)——系统分层 * 前端不等于浏览器,浏览器 = 前端常见的运行环境之一 * 后端 -- 系统分层 * 总结 * Web 系统会叫前后端/非 Web 系统 一般都是客户端,服务端 * 程序&服务器 * f12-》

By Ne0inhk