12k
All articles

如何在 Windows 上使用 NVM 切换 Node.js 版本(分步指南)

介绍在 Windows 上安装 NVM,实现不同项目间的 Node.js 版本切换,并解决常见的权限与路径错误问题。

OpenReplay Team
OpenReplay Team
如何在 Windows 上使用 NVM 切换 Node.js 版本(分步指南)

在 Windows 上管理不同的 Node.js 版本可能很棘手,尤其是当每个项目需要不同版本时。NVM for Windows 通过实现简便的版本切换解决了这个问题。本指南清晰地解释了如何安装和使用 NVM,重点介绍了常见的安装问题和故障排除步骤。

要点

  • 使用 nvm-windows 快速切换 Node.js 版本。
  • 移除之前的 Node 安装以避免冲突。
  • 在管理员终端中运行命令以防止常见的权限问题。

安装 NVM for Windows

步骤 1:移除现有的 Node 安装

在安装 NVM 之前,卸载任何现有的 Node.js 以避免冲突:

  • 前往设置 > 应用并卸载 Node.js。
  • 确保 C:Program Filesnodejs 中没有残留的 nodejs 文件夹。

安装 nvm-windows

  1. 下载最新的 nvm-windows 发行版。

  2. 运行 nvm-setup.exe 并按照提示操作(使用默认位置)。

  3. 以管理员身份打开新终端并验证安装:

    nvm --version
    

安装最新的 Node.js 版本

安装 NVM 后,您现在可以轻松管理多个 Node.js 版本:

  • 安装最新的 LTS 版本(当前为 Node.js 22.x):
nvm install lts
  • 安装特定版本(例如,Node.js 23.x):
nvm install 23.3.0

列出已安装的 Node 版本:

nvm ls

如何切换 Node.js 版本

一旦版本安装完成,切换非常简单:

  • 激活特定版本:
nvm use 22.14.0
  • 确认当前激活的版本:
node -v
npm -v

排除常见的 NVM 问题

问题:NVM 无法切换 Node 版本

**原因:**存在之前的 Node 安装。

解决方案:

  • 删除或重命名现有的 C:Program Filesnodejs 文件夹。
  • 再次运行 nvm use <version>

问题:权限错误(拒绝访问)

**原因:**创建符号链接需要提升的权限。

解决方案:

  • 以管理员身份运行命令提示符,或
  • 启用 Windows 开发者模式(设置 > 更新和安全 > 开发者选项)。

问题:找不到 ‘nvm’ 命令

**原因:**环境路径未更新。

**解决方案:**关闭并重新打开终端或重启 Windows。

问题:切换后全局 npm 包丢失

**原因:**全局包是特定于版本的。

**解决方案:**为每个 Node.js 版本重新安装全局包或使用本地安装(npx)。

最佳实践

  • 记录每个项目的 Node 版本。
  • 定期更新 nvm-windows 并移除未使用的 Node 版本。
  • 使用 Node LTS 版本以保持稳定性。

结论

使用 nvm-windows 简化了在 Windows 上管理多个 Node.js 版本的过程。正确的设置和故障排除有助于避免常见陷阱,使您的开发过程更加顺畅。

常见问题

我可以在 Windows 上使用原始的 NVM 吗?

不可以,原始的 NVM 是为 Linux 和 macOS 设计的。Windows 用户应该使用 nvm-windows。

为什么 `nvm use` 没有更新我的 Node.js 版本?

通常,这是由残留的 Node 安装引起的。移除或重命名任何现有的 Node 安装文件夹。

我需要管理员权限才能使用 NVM 吗?

是的,除非您在 Windows 上启用开发者模式。

如何从 NVM 卸载 Node 版本?

使用命令 `nvm uninstall <version>`。

Node.js 版本安装在哪里?

通常在 `%AppData%Roamingnvm` 中。每个版本都单独安装。

Listen to your bugs 🧘, with OpenReplay

See how users use your app and resolve issues fast.
Loved by thousands of developers

We use cookies to improve your experience. By using our site, you accept cookies.