NVM 安装与配置:macOS/Linux 和 Windows 环境变量设置,npm 找不到的排查

macOS / Linux 配置

安装 nvm 后,需要在 Shell 配置文件中初始化脚本,否则每次新开终端都找不到 nvm 命令。

~/.zshrc(zsh)或 ~/.bashrc(bash)末尾添加:

export NVM_DIR="$HOME/.nvm"
[ -s "$NVM_DIR/nvm.sh" ] && \. "$NVM_DIR/nvm.sh"
[ -s "$NVM_DIR/bash_completion" ] && \. "$NVM_DIR/bash_completion"

重新加载:

source ~/.zshrc   # 或 source ~/.bashrc

验证:

nvm -v

Windows(nvm-windows)配置

nvm-windows 安装后需要两个系统环境变量:

NVM_HOME=C:\Users\<用户名>\AppData\Roaming\nvm
NVM_SYMLINK=C:\Program Files\nodejs

并在 Path 中加入:

%NVM_HOME%
%NVM_SYMLINK%

验证(重开终端后):

nvm version
node -v
npm -v

查看当前配置:

nvm root   # nvm 安装目录
where nvm  # 命令位置

常用命令

# 安装指定版本
nvm install 22
nvm install 20.11.0

# 查看已安装版本
nvm list

# 切换版本
nvm use 22

# 设置默认版本(新终端自动激活)
nvm alias default 22

# 查看当前使用的版本
nvm current
node -v

npm 找不到的排查

原因一:还没安装 Node

nvm list   # 如果为空,先 install
nvm install 22
nvm use 22

原因二:版本未激活

nvm current   # 输出 none 或系统版本
nvm use 22

原因三:没有设置 default alias

新开终端后 nvm 不会自动激活任何版本:

nvm alias default 22

设置后新终端自动使用该版本。

原因四:Windows PATH 配置错误

where node
where npm
echo %NVM_SYMLINK%

如果 where node 返回空或旧路径,检查 NVM_SYMLINK 是否指向 nvm 创建的 nodejs 符号链接目录,并确认 %NVM_SYMLINK% 在 PATH 中。

项目级 Node 版本锁定

在项目根目录创建 .nvmrc

22

进入目录后执行:

nvm use   # 自动读取 .nvmrc 切换版本

配合 .nvmrc 可以保证团队成员使用相同的 Node 版本。