macOS / Linux 上配 nvm
先确认 nvm 安装位置:
echo $NVM_DIR
通常是 ~/.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
nvm -v
Windows 上配 nvm-windows
先看 nvm 目录:
nvm root
通常输出:
C:\Users\<你>\AppData\Roaming\nvm
系统环境变量里加两条:
NVM_HOME = C:\Users\<你>\AppData\Roaming\nvm
NVM_SYMLINK = C:\Program Files\nodejs
再把 Path 里追加:
%NVM_HOME%
%NVM_SYMLINK%
新开一个 CMD 窗口,验证:
nvm version
node -v
npm -v
常用命令速查
nvm install 22 # 装 Node 22
nvm list # 已装版本
nvm use 22 # 切换版本
nvm alias default 22 # 设默认(macOS/Linux)
nvm current # 当前使用版本
which node 有输出,但 npm not found
碰到这种情况:
$ which node
/Users/you/.nvm/versions/node/v22.21.1/bin/node
$ which npm
npm not found
有六种可能,从概率高到低排:
1. 只装了 nvm 没装 Node
nvm list # 一片空
nvm install 22
nvm use 22
2. 版本没激活
nvm current # 显示 none / N/A
nvm use 22
3. PATH 没指向当前 Node
echo $PATH # 看有没有 .nvm/versions/node/v22.x.x/bin
4. Node 目录里 npm 文件真的没了
ls -lah /Users/you/.nvm/versions/node/v22.21.1/bin/
正常应该有 node、npm、npx、corepack。只有 node 说明安装被中断过,重装:
nvm uninstall 22
nvm install 22
5. Windows:nvm-windows 软链坏了(最常见)
dir "C:\Program Files\nodejs"
看到目录是空的或者链接指向失效版本,重新 nvm use:
nvm use 22.19.0
之后 where node / where npm 都会有结果。
6. Homebrew 装的 nvm 没加载环境
nvm use default
# 或
nvm install --lts
一句话总结
nvm 有问题时按这个顺序自检:nvm list → nvm current → which node / which npm → 检查 bin 目录是否完整。95% 的问题都是”没 use 版本”或”软链坏了”。
