如何在macOS中彻底卸载Node.js 10.x与npm 6.x.x以升级至npm 9?
彻底卸载Mac上旧版本Node.js和npm并安装npm9的解决方案
先明确关键前提
npm 9要求Node.js版本至少为v14.17.0或v16.13.0,你的Node.js v10.4.1完全不兼容,这也是你升级npm失败的核心原因之一,必须先升级Node.js才能正常使用npm9。
步骤1:定位当前npm和Node.js的安装路径
先搞清楚终端调用的旧版本到底存在哪里:
- 执行以下命令查看所有相关路径:
记录输出的所有路径,比如which npm whereis npm which node whereis node/usr/local/bin/npm、/usr/local/lib/node_modules等。
步骤2:彻底清理旧版本文件
情况1:通过官方.pkg安装的Node.js/npm
执行以下命令删除所有相关文件(需要管理员权限,输入你的Mac密码确认):
# 删除Node可执行文件 sudo rm -rf /usr/local/bin/node # 删除全局node_modules文件夹(包含旧npm) sudo rm -rf /usr/local/lib/node_modules # 删除npm、npx等命令文件 sudo rm -rf /usr/local/bin/npm sudo rm -rf /usr/local/bin/npx # 删除相关文档和用户配置 sudo rm -rf /usr/local/share/man/man1/node.1 sudo rm -rf /usr/local/share/systemtap/tapset/node.stp sudo rm -rf ~/.npm
情况2:通过Homebrew安装的Node.js/npm
如果之前用brew装过,先卸载再清理残留:
brew uninstall node brew cleanup node
手动删除残留路径
根据步骤1中whereis npm和whereis node输出的所有路径,逐个删除,示例:
sudo rm -rf [你记录的具体路径]
步骤3:清理环境变量配置
检查你的shell配置文件(比如~/.zshrc、~/.bash_profile、~/.profile),避免终端继续指向旧版本:
- 打开对应配置文件,比如用zsh的话:
open ~/.zshrc - 删除所有类似
export PATH="/旧的node/npm路径:$PATH"的行 - 保存文件后,执行以下命令让配置生效:
source ~/.zshrc
步骤4:验证清理结果
重启终端,执行以下命令,如果提示command not found,说明旧版本已彻底删除:
node -v npm -v
步骤5:重新安装Node.js和npm9
推荐用nvm管理Node.js版本(避免权限问题,方便切换版本):
- 安装nvm(无需sudo,安装在用户目录下)
- 安装兼容npm9的Node.js版本(比如LTS版v18):
nvm install 18 - 切换到刚安装的版本:
nvm use 18 - 升级到npm9:
npm install -g npm@9
如果不想用nvm,直接下载Node.js官网兼容的.pkg安装包(v14.17+、v16.13+或更高版本),安装后默认npm版本会符合要求,再执行npm install -g npm@9即可。
内容的提问来源于stack exchange,提问作者Dr4gon
相关产品推荐
相关产品推荐

