使用 nvm(Node Version Manager) 高效管理Node.js

使用 nvm(Node Version Manager) 可以高效管理多个 Node.js 版本,尤其适合需要切换不同版本进行开发或测试的场景。以下是针对 Windows 和 macOS/Linux 的详细操作指南,涵盖安装、版本管理、常见问题解决等核心内容。

一、nvm 安装与配置

1. Windows 系统安装 nvm-windows

  • 下载安装包
    nvm-windows 官方仓库 下载最新版 nvm-setup.zip
  • 安装步骤
    1. 解压并运行 nvm-setup.exe
    2. 选择安装目录(建议默认 C:\Users\<用户名>\AppData\Roaming\nvm)。
    3. 勾选 "自动配置 Node.js 路径"(避免手动设置环境变量)。
    4. 完成安装后重启终端。

验证安装

bash 复制代码
nvm version

预期输出

bash 复制代码
1.1.11  # 版本号可能不同

2. macOS/Linux 系统安装 nvm

  • 通过脚本安装(推荐):

    |---|-----------------------------------------------------------------------------------|
    | | curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.5/install.sh | bash |

    安装后重启终端,或运行:

    |---|--------------------------------------------|
    | | source ~/.bashrc # 或 ~/.zshrc、~/.profile |

  • 验证安装

    |---|------------------|
    | | command -v nvm |

  • 预期输出

    |---|---------------|
    | | nvm # 表示已安装 |

二、nvm 核心操作指南

1. 安装指定版本的 Node.js

|---|--------------------------------------------|
| | nvm install 16.20.2 # 安装 Node.js 16.20.2 |

  • 加速下载 (国内用户):
    设置 npm 镜像源后,nvm 会自动从镜像下载 Node.js:

    |---|----------------------------------------------------------|
    | | npm config set registry https://registry.npmmirror.com |

2. 切换 Node.js 版本

  • 临时切换 (当前终端会话有效):

    |---|-------------------|
    | | nvm use 16.20.2 |

  • 永久切换 (设置默认版本):

    |---|-----------------------------|
    | | nvm alias default 16.20.2 |

3. 查看已安装版本

|---|---------------------------|
| | nvm list # 显示所有已安装版本 |
| | nvm ls # 同上(简写) |
| | nvm current # 显示当前激活的版本 |

4. 卸载 Node.js 版本

|---|----------------------------------|
| | nvm uninstall 16.20.2 # 卸载指定版本 |

总结命令清单

命令 作用 示例
nvm install 16.20.2 安装指定版本 nvm install 18.16.0
nvm use 16.20.2 切换版本 nvm use 14.17.0
nvm alias default 16.20.2 设置默认版本 nvm alias default 16.20.2
nvm list 查看已安装版本 nvm ls
nvm uninstall 16.20.2 卸载版本 nvm uninstall 14.17.0
nvm current 查看当前版本 nvm current
相关推荐
小蜜蜂dry2 小时前
nestjs学习 - 控制器、提供者、模块
前端·node.js·nestjs
San303 小时前
手写 Mini Cursor:基于 Node.js 与 LangChain 的开发实战
langchain·node.js·agent
前端付豪9 小时前
Nest 项目小实践之图书增删改查
前端·node.js·nestjs
sunny_1 天前
面试踩大坑!同一段 Node.js 代码,CJS 和 ESM 的执行顺序居然是反的?!99% 的人都答错了
前端·面试·node.js
Qinana1 天前
150行代码搞定私有知识库!Node.js + LangChain 打造最小化 RAG 系统全流程
人工智能·程序员·node.js
一次旅行1 天前
npm-error code 128问题解决方法
node.js
前端付豪2 天前
Nest 项目小实践之图书展示和搜索
前端·node.js·nestjs
无责任此方_修行中2 天前
如何利用 pnpm 的安全控制功能防御 npm 供应链攻击
javascript·npm·node.js
允许部分打工人先富起来2 天前
在node项目中执行python脚本
前端·python·node.js
None3213 天前
【NestJs】基于Redlock装饰器分布式锁设计与实现
后端·node.js