✅ 前言:为什么推荐使用 nvm 安装 Node.js?
Node.js 是目前最流行的 JavaScript 运行时环境,广泛用于后端开发、工具链构建和全栈项目。然而,不同项目可能依赖不同的 Node.js 版本(如 v18、v20),直接安装单一版本容易导致兼容性问题。
nvm(Node Version Manager) 正是为解决这一痛点而生——它允许你在同一台电脑上轻松安装、切换和管理多个 Node.js 版本。
在 Windows 系统中,官方推荐使用 nvm-windows(由 Corey Butler 维护),而非 Linux/macOS 上的 nvm。
⚠️ 前置准备:是否要先删除已有的 Node.js?
❓ 问题:我之前装过 Node.js,现在装 nvm,要不要先卸载?
✅ 答案:强烈建议先彻底卸载旧版 Node.js!
否则会导致:
- PATH 冲突
-
node/npm命令指向错误版本 - nvm 无法正常工作
🔧 卸载旧版 Node.js 的详细步骤(必须执行)
方法一:通过控制面板卸载(推荐)
-
按
Win + R→ 输入appwiz.cpl→ 回车
👉 打开“程序和功能” -
在列表中找到以下项目并右键卸载:
- Node.js
- npm
- Node.js LTS
- Node.js Current
-
等待卸载完成
方法二:手动删除残留文件(重要!)
即使卸载了,仍需手动清理以下路径:
| 路径 | 说明 |
|---|---|
C:\Program Files\nodejs |
主程序目录(若存在) |
C:\Users\你的用户名\AppData\Roaming\npm |
全局包缓存 |
C:\Users\你的用户名\AppData\Roaming\npm-cache |
包下载缓存 |
C:\Users\你的用户名\.npmrc |
配置文件(可选) |
💡 注意:
AppData是隐藏文件夹,需开启“显示隐藏文件”才能看到。
方法三:清除环境变量
-
按
Win + R→ 输入sysdm.cpl→ 回车
👉 打开“系统属性” -
点击“高级” → “环境变量”
-
在“系统变量”中查找:
PathNODE_PATH
-
删除所有包含
nodejs或npm的条目(如C:\Program Files\nodejs) -
保存并重启终端
✅ 只有完成以上三步,才能确保干净安装 nvm。
📥 第一步:下载 nvm for Windows
-
打开浏览器,访问 GitHub 发布页:
👉 https://github.***/coreybutler/nvm-windows/releases -
在最新版本(如
v1.1.12)下方,找到文件列表:
| 文件 | 是否推荐 |
|---|---|
nvm-setup.exe |
✅ 强烈推荐(图形化安装器,自动配置环境变量) |
nvm-noinstall.zip |
❌ 不推荐(需手动配置,适合高级用户) |
| 源码包 | ❌ 不需要 |
-
点击
nvm-setup.exe下载(约 2–5 MB)
💡 提示:不要下载
.zip压缩包,除非你知道如何手动配置 PATH 和符号链接。
🖥️ 第二步:运行安装程序 —— 图文详解每一步(支持 D 盘安装)
双击下载好的 nvm-setup.exe,开始安装向导。以下是你提供的最新版界面截图对应的详细说明。
🔹 步骤 1:许可协议(License Agreement)
- 作用:确认你接受 MIT 开源许可证。
-
操作:
- ✅ 勾选 “I a***ept the agreement”
- 点击 Next >
⚠️ 若不勾选,安装无法继续。
🔹 步骤 2:选择 nvm 安装路径(Destination Location)
-
默认路径:
C:\Users\xiaoli\AppData\Local\nvm -
这是什么?
👉 这是 nvm 程序本身 的安装目录,包含nvm.exe、配置文件和各 Node.js 版本的存储位置。
✅ 支持自定义路径到 D 盘!
✅ 你可以修改这个路径为 D 盘!
示例:D:\soft_dev\nvm\nvm
如何操作?
- 点击 Browse… 按钮
- 导航到 D 盘,创建一个新文件夹(如
D:\soft_dev\nvm\nvm) - 选择该文件夹作为目标路径
- 点击 Next >
💡 推荐命名规范:
D:\soft_dev\nvm\nvm
便于后期管理和识别。
🔹 步骤 3:设置活动版本位置(Active Version Location)
-
默认路径:
C:\nvm4w\nodejs -
这是什么?
👉 这是一个符号链接(symlink)目录,用于指向当前激活的 Node.js 版本。
✅ 支持自定义路径到 D 盘!
✅ 你可以修改这个路径为 D 盘!
示例:D:\soft_dev\nodejs
如何操作?
- 点击 Browse… 按钮
- 导航到 D 盘,创建一个新文件夹(如
D:\soft_dev\nodejs) - 选择该文件夹作为目标路径
- 点击 Next >
💡 推荐命名规范:
D:\soft_dev\nodejs
与 nvm 路径对应,保持结构清晰。
🔹 步骤 4:桌面通知设置(Desktop Notifications - PREVIEW)
- 作用:选择是否接收更新提醒(通过 Windows 通知中心弹窗)。
- 四个选项详解:
| 选项 | 含义 | 是否推荐 |
|---|---|---|
| ✅ Node.js LTS releases | 接收长期支持版(如 v20.15.1)发布通知 | ✔️ 推荐勾选(稳定、安全) |
| ❌ Node.js Current releases | 接收最新测试版(如 v21.x)通知 | ⚠️ 不推荐(不稳定,仅开发者尝鲜用) |
| ✅ NVM For Windows releases | 接收 nvm 工具本身的更新通知 | ✔️ 推荐勾选(修复 bug、提升兼容性) |
| ❓ Author updates and releases | 接收作者未来项目或公告 | ✅ 可选(非必需) |
-
操作建议:
- ✅ 勾选前两项(LTS + nvm 更新)
- ❌ 取消后两项(避免信息干扰)
- 点击 Next >
💡 通知不会影响性能,可随时在
nvm settings中关闭。
🔹 步骤 5:立即安装 Node.js(Install Node.js Now)
❌ 注意:你提到“没有第五步”,这说明你使用的可能是 较新版本的 nvm-windows,不再强制安装 Node.js。
✅ 实际情况:
- 最新版 nvm-windows 不再默认安装 Node.js,而是只安装管理工具。
- 安装完成后,你需要手动使用命令安装 Node.js。
🔹 步骤 6:安装完成
- 显示 “Installation ***plete!”
- 点击 Finish
🔍 第三步:验证安装是否成功(重点!)
✅ 验证 nvm 是否安装成功
打开 CMD 或 PowerShell,输入:
nvm list
✅ 预期输出:
No installations recognized.
❌ 这是正常的!因为 还没有安装任何 Node.js 版本。
✅ 手动安装 Node.js(关键步骤)
现在我们来手动安装一个 Node.js 版本:
nvm install 20.15.1
💡 你可以替换为其他 LTS 版本,如
18.18.0。
等待安装完成(约 10–30 秒),然后再次运行:
nvm list
✅ 预期输出:
20.15.1
🎉 表示 Node.js 已成功安装!
✅ 验证 node 和 npm 是否可用
执行nvm use 20
node -v
npm -v
✅ 预期输出:
v20.15.1
10.7.0
🎉 如果全部显示版本号,说明安装成功!
🛠️ 第四步:检查环境变量是否正确配置
✅ nvm 是否自动配置了环境变量?
✅ 是的! nvm 安装程序会自动添加以下两个环境变量:
| 变量名 | 值 | 说明 |
|---|---|---|
NVM_HOME |
D:\soft_dev\nvm\nvm |
nvm 主程序目录 |
NVM_SYMLINK |
D:\soft_dev\nodejs |
符号链接目录 |
🧪 如何查看这些变量?
-
按
Win + R→ 输入sysdm.cpl→ 回车
👉 打开“系统属性” -
点击“高级” → “环境变量”
-
在“系统变量”中查找:
NVM_HOMENVM_SYMLINK
-
确认值是否为:
NVM_HOME: D:\soft_dev\nvm\nvm NVM_SYMLINK: D:\soft_dev\nodejs
💡 如果没有,说明安装失败,请重新运行
nvm-setup.exe。
✅ 检查 PATH 是否已添加
在“系统变量”中找到 Path,点击“编辑”。
你应该看到以下两条路径已自动添加:
D:\soft_dev\nvm\nvm
D:\soft_dev\nodejs
✅ 这两条路径保证了
nvm、node、npm命令可以在任意终端中使用。
🌐 第五步:配置 npm 镜像源(大幅提升下载速度)
这是国内用户必须配置的关键步骤!
由于 npm 官方仓库位于海外,国内用户常遇到下载慢、超时、404 等问题。
✅ 推荐方案:使用淘宝 NPM 镜像(npmmirror.***)
淘宝团队维护的 npmmirror.*** 是官方推荐的国内镜像源,完全同步 npm 官方仓库。
🔧 配置方法一:全局设置镜像源(推荐)
打开 CMD 或 PowerShell,执行:
npm config set registry https://registry.npmmirror.***
✅ 此命令会修改全局配置文件(
.npmrc),对所有项目生效。
🔍 验证是否生效
执行:
npm config get registry
✅ 预期输出:
https://registry.npmmirror.***
🔧 配置方法二:临时使用镜像(单次命令)
如果你只想某一次安装使用镜像,可以加 --registry 参数:
npm install express --registry=https://registry.npmmirror.***
🔧 配置方法三:使用 ***pm(可选)
淘宝还提供了 ***pm 工具,速度更快:
npm install -g ***pm --registry=https://registry.npmmirror.***
之后可以用 ***pm install 代替 npm install。
⚠️ 注意:
***pm不完全兼容 npm,某些插件可能有问题,推荐优先使用方法一。
🔄 恢复官方源(如需)
npm config set registry https://registry.npmjs.org
📁 配置文件位置
全局配置文件位于:
C:\Users\你的用户名\.npmrc
内容示例:
registry=https://registry.npmmirror.***
你可以手动编辑此文件修改源。
🔄 第六步:使用 nvm 管理多个 Node.js 版本
查看所有可用版本
nvm list available
安装新版本(例如 v18)
nvm install 18.18.0
切换版本
nvm use 18.18.0
设置默认版本(开机自动激活)
nvm alias default 20.15.1
删除旧版本
nvm uninstall 16.20.2
🧪 第七步:创建第一个 Node.js 项目(实战测试)
-
创建项目目录:
mkdir my-first-node-app cd my-first-node-app -
初始化项目:
npm init -y -
创建
server.js:const http = require('http'); http.createServer((req, res) => { res.writeHead(200, { 'Content-Type': 'text/plain' }); res.end('Hello from Node.js!\n'); }).listen(3000); console.log('Server running at http://localhost:3000/'); -
运行:
node server.js -
打开浏览器访问:
http://localhost:3000
👉 看到 “Hello from Node.js!” 即表示一切正常! -
测试镜像源是否生效:
npm install express观察下载速度是否明显提升。
🛑 常见问题排查(FAQ)
❓ Q1:'nvm' is not recognized as an internal or external ***mand
- 原因:PATH 未正确配置
-
解决:
- 重启终端
- 检查环境变量中是否包含:
D:\soft_dev\nvm\nvmD:\soft_dev\nodejs
- 若仍无效,重新运行
nvm-setup.exe并确保按本文步骤操作
❓ Q2:安装 Node.js 时卡住或失败
- 检查网络连接
- 关闭杀毒软件临时测试
- 尝试手动下载 Node.js zip 包并放入对应版本目录(高级操作)
❓ Q3:如何卸载 nvm?
- 控制面板 → 卸载程序 → 找到 “nvm-windows” 卸载
- 手动删除:
D:\soft_dev\nvm\nvmD:\soft_dev\nodejs
- 清理环境变量中的相关 PATH
❓ Q4:npm install 仍然很慢?
- 确认
.npmrc文件内容是否正确 - 尝试使用
***pm临时测试 - 检查是否被公司代理或防火墙拦截
📚 总结:最佳实践清单
| 项目 | 推荐做法 |
|---|---|
| 安装方式 | 使用 nvm-setup.exe(图形化安装器) |
| nvm 路径 | 自定义为 D:\soft_dev\nvm\nvm
|
| 活动版本路径 | 自定义为 D:\soft_dev\nodejs
|
| Node.js 版本 | 优先选择 LTS 版本 |
| 镜像源 |
必须配置:npm config set registry https://registry.npmmirror.***
|
| 多版本管理 | 使用 nvm install / nvm use
|
| 项目初始化 |
npm init -y 快速生成 package.json |