nvm管理下pnpm的下载
使用 nvm 管理 Node.js 时,有一个非常棒的机制:不同 Node 版本的全局包是隔离的。
这意味着,你如果在 Node v16.14.1 下安装的 pnpm,其实并不会污染 Node v22.14.0 的环境。你甚至不需要在 v16 里执行卸载命令,只需要切换到 v22 重新安装即可。
以下是完整且安全的操作步骤:
第一步:安装并切换到 Node 22.14.0
打开你的终端,执行以下命令:
# 安装 22.14.0 版本
nvm install 22.14.0
# 切换到 22.14.0 版本
nvm use 22.14.0
# (可选)将其设置为默认版本,以后打开终端自动就是 22 了
nvm alias default 22.14.0
验证一下当前版本:
node -v # 应该输出 v22.14.0
第二步:在 Node 22 下安装 pnpm
在 Node 22 环境下,推荐使用 Corepack 来安装和管理 pnpm,这是 Node.js 官方推荐的方式,不需要用 npm 全局安装。
方法 A:使用 Corepack(最推荐)
# 开启 Corepack
corepack enable
# 激活 pnpm(会安装最新版的 pnpm)
corepack prepare pnpm@latest --activate
# 验证安装
pnpm -v
方法 B:使用 npm 全局安装(传统方式)
如果你不想用 Corepack,依然可以用 npm 装:
npm install -g pnpm
# 验证安装
pnpm -v
第三步:清理旧的 Node 16 中的 pnpm(可选)
如前所述,由于 nvm 的隔离机制,你现在用 pnpm -v 看到的已经是新版本 Node 下的 pnpm 了。但如果你有强迫症,想把 v16 里的 pnpm 也删掉,可以这样做:
# 切换回 16
nvm use 16.14.1
# 卸载 pnpm
npm uninstall -g pnpm
# 切回 22
nvm use 22.14.0
注意事项(重要排错)
如果你切换到 Node 22 之后,输入 pnpm -v 依然报错,或者显示找不到 pnpm,可能是因为你之前安装 pnpm 时使用了独立安装脚本,它会在系统的环境变量里写入 pnpm 的路径,导致绕过了 nvm 的隔离。
如果是这种情况,你需要彻底卸载独立安装的 pnpm:
运行官方的卸载命令:pnpm store prune
删除 pnpm 的家目录(通常在 ~/.local/share/pnpm 或 Windows 的 %LOCALAPPDATA%/pnpm)。
从你的系统环境变量(如 .bashrc, .zshrc 或 Windows 系统环境变量)中移除关于 pnpm 的 PATH 路径。
重启终端,然后按照上面的“第二步”重新用 Corepack 或 npm 安装即可。

浙公网安备 33010602011771号