Node.js 版本管理:NVM 下载、安装、注意点与常用命令
Node.js 版本管理:NVM 下载、安装、注意点与常用命令
日常开发里不同项目可能依赖 不同 Node 版本。用 NVM(Node Version Manager) 可以在本机安装、切换多个 Node,避免全局只装一个版本带来的兼容问题。
需要先说明:名称都叫「nvm」,但 Windows 与 macOS / Linux 用的是两套不同实现,下载地址与部分命令略有差异。
| 系统 | 常用实现 | 说明 |
|---|---|---|
| Windows | nvm-windows | 独立项目,与 Unix 版命令大体相近,细节不同 |
| macOS / Linux | nvm(nvm-sh) | 社区最常用的 Shell 脚本版 |
1. 在哪下载
1.1 Windows:nvm-windows
- 项目主页:coreybutler/nvm-windows
- 安装包下载:打开 Releases 页面,下载
nvm-setup.exe(图形安装向导)或nvm-noinstall.zip(解压手动配置,进阶用法)。
建议多数用户直接选 nvm-setup.exe。
1.2 macOS / Linux:nvm(nvm-sh)
- 项目主页:nvm-sh/nvm
- 安装方式:通常不单独下「安装包」,而是用 官方安装脚本 一键安装到用户目录(见下文「安装步骤」)。也可 克隆仓库 后手动执行
install.sh,详见仓库 README 安装章节。
2. 怎么安装
2.1 Windows(nvm-setup)
- 若已单独安装过 Node.js:建议先在「应用和功能」里卸载 Node.js,避免与 nvm 管理的目录冲突(见下文注意点)。
- 运行
nvm-setup.exe,按向导选择 nvm 根目录 与 Node.js 符号链接目录(默认即可,勿随意放在含中文或特殊空格的路径)。 - 安装结束后 新开一个终端(或重启电脑),执行:
nvm version
能输出版本号即表示 nvm 已加入 PATH。
- 安装并启用某个 Node 版本(示例):
nvm install 20.18.0
nvm use 20.18.0
node -v
npm -v
2.2 macOS / Linux(官方脚本)
需已安装 curl 或 wget,以及 git(部分环境会用到)。
使用 bash / zsh 时,在终端执行(以最新安装说明为准,可对照 官方 README):
curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.40.1/install.sh | bash
安装脚本会把 nvm 装到 ~/.nvm,并提示你往 ~/.bashrc、~/.zshrc 等文件追加初始化代码。执行完后请 source 对应配置文件或重开终端:
# 示例:zsh
source ~/.zshrc
验证:
command -v nvm
nvm --version
安装 Node:
nvm install --lts
nvm use --lts
node -v
3. 注意点(常见问题)
Windows 与 Unix 不要混用文档
网上教程若写nvm ls-remote,那是 macOS/Linux 版 nvm 的命令;在 nvm-windows 里远程列表通常用nvm list available(见下节对照表)。路径与权限
- 尽量 不要 把 nvm / Node 装到 含中文、过长或带奇怪空格 的目录。
- Windows 若全局安装失败,可尝试 以管理员身份运行终端 后再执行
nvm install/nvm use。
与已有 Node 冲突
安装 nvm 前若机器上已有「独立安装的 Node」,容易出现 PATH 优先级 混乱(终端里where node/which node看到的不是 nvm 下的)。处理思路:卸载独立 Node,或检查系统环境变量,确保 nvm 提供的node路径在前。国内网络
下载 Node 二进制若较慢,可为 nvm 配置镜像(具体变量名以你所用 nvm 版本文档为准)。Unix 版常见做法是设置NVM_NODEJS_ORG_MIRROR等环境变量后再nvm install;Windows 版也有对应说明,见 nvm-windows 文档。项目内固定版本
团队可在仓库根目录使用.nvmrc文件写入版本号(如20.18.0)。Unix 版 nvm 在项目目录执行nvm use可自动读取;Windows 端若支持行为以当前 nvm-windows 版本说明为准,亦可手动nvm use对应版本。WSL
在 WSL(Linux 子系统) 里请按 Linux 版 nvm 安装,而不是安装 Windows 的nvm-setup.exe。
4. 命令介绍(对照简表)
下列为日常最高频用法;子命令在 Windows / Unix 间可能略有命名差异,以各自 --help 为准。
4.1 通用概念(两边都有或类似)
| 作用 | Windows(nvm-windows) | macOS / Linux(nvm-sh) |
|---|---|---|
| 查看 nvm 版本 | nvm version | nvm --version |
| 列出已安装版本 | nvm list | nvm ls 或 nvm list |
| 安装某版本 | nvm install 20.18.0 | nvm install 20.18.0 |
| 切换版本 | nvm use 20.18.0 | nvm use 20.18.0 |
| 卸载某版本 | nvm uninstall 20.18.0 | nvm uninstall 20.18.0 |
4.2 查看「可安装的远程版本」
| 系统 | 命令 |
|---|---|
| Windows | nvm list available |
| macOS / Linux | nvm ls-remote(可加 nvm ls-remote --lts) |
4.3 仅 macOS / Linux(nvm-sh)常用补充
| 命令 | 说明 |
|---|---|
nvm current | 当前激活的 Node 版本 |
nvm which current | 当前 node 可执行文件路径 |
nvm alias default 20.18.0 | 新开终端默认使用的版本 |
nvm install --lts / nvm use --lts | 安装 / 使用当前 LTS |
4.4 仅 Windows(nvm-windows)补充示例
| 命令 | 说明 |
|---|---|
nvm arch | 查看或设置 32/64 位架构 |
nvm root | 显示 nvm 根目录 |
nvm on / nvm off | 启用或禁用 nvm 管理 |
5. 小结
- 下载:Windows 用 nvm-windows Releases;macOS / Linux 用 nvm-sh 官方安装脚本。
- 安装:Windows 走安装向导后新开终端;Unix 执行脚本后
source配置 或重开终端。 - 注意:区分两套 nvm、路径与 PATH、旧 Node 冲突、国内镜像与
.nvmrc。 - 命令:
install/use/list最常用;远程列表在 Windows 用nvm list available,在 Unix 多用nvm ls-remote。
按上述步骤配置后,即可在同一台机器上为多套 Node 项目切换版本,与 《Node.js 入门》 中后续 npm 与项目实践衔接使用。
