Ubuntu 16终端启动报错:npm无法在Node.js v0.12.4运行,如何修复?
解决Ubuntu 16下npm与Node.js版本不兼容及nvm prefix配置冲突问题
别担心,咱们一步步来搞定这两个问题:
第一步:先解决当前终端的prefix冲突报错
直接执行系统提示的命令,清除旧版本Node的冲突prefix配置,让终端先恢复正常:
nvm use --delete-prefix v0.12.4 --silent
这个命令会临时移除v0.12.4版本对应的npm prefix设置,暂时解决启动时的报错。
第二步:彻底升级Node.js到兼容版本
v0.12.4确实太老了,完全不兼容新版npm,咱们用nvm来安装官方支持的稳定版本(比如LTS版的v8.x,稳定性拉满):
- 先看看nvm支持的可安装Node版本列表:
从列表里挑一个官方提到的兼容版本(4、6、7、8、9都可以,推荐选LTS版本,比如v8.17.0)。nvm ls-remote - 安装选中的版本:
nvm install 8.17.0 - 设置这个版本为默认Node版本,这样每次打开终端都会自动用它,不会再跳回旧版本:
nvm alias default 8.17.0 - 验证安装成功:
此时应该显示你刚安装的Node版本号,npm也能正常运行,不会再弹出版本不兼容的错误。node -v npm -v
后续如果再遇到prefix问题的话:
可以手动检查并重置npm的prefix配置:
- 查看当前prefix设置:
npm config get prefix - 如果需要重置,直接执行:
这样npm会自动适配nvm管理的Node版本路径,就不会再出现冲突了。npm config set prefix ""
内容的提问来源于stack exchange,提问作者StormTrooper
相关产品推荐
相关产品推荐

