这个问题很常见,是因为 pnpm
的全局安装路径没有包含在系统的 PATH
环境变量中。
🔍 问题原因
当你使用 npm i -g pnpm
安装时,pnpm 被安装到了 npm 的全局目录,但这个目录可能不在你的 PATH
中。
🛠️ 解决方案
方案1:找到并配置 PATH(推荐)
-
找到 npm 的全局安装路径:
npm config get prefix
这会返回一个路径,通常是
/usr/local
或/Users/你的用户名/.npm-global
-
将路径添加到 PATH:
-
如果你使用的是 zsh(macOS 默认):
echo 'export PATH="'$(npm config get prefix)'/bin:$PATH"' >> ~/.zshrc source ~/.zshrc
-
如果你使用的是 bash:
echo 'export PATH="'$(npm config get prefix)'/bin:$PATH"' >> ~/.bash_profile source ~/.bash_profile
-
-
验证是否生效:
pnpm -v
方案2:使用 nvm 管理 Node.js(一劳永逸)
如果你经常遇到这类问题,建议使用 nvm:
-
安装 nvm:
curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.0/install.sh | bash
-
重新打开终端,安装 Node.js:
nvm install --lts nvm use --lts
-
重新安装 pnpm:
npm install -g pnpm
方案3:直接使用完整路径
临时解决方案,使用完整路径运行 pnpm:
# 用刚才找到的路径
/usr/local/bin/pnpm -v
# 或者
$(npm config get prefix)/bin/pnpm -v