You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Ubuntu 22.04下npm与Node.js版本不兼容及Angular CLI报错求助

解决方案

1. 彻底清理现有Node.js/npm残留

当前Node.js(v12)与npm(v10)版本严重不兼容,且安装路径混乱,需先完全清理所有相关文件:

  • 删除系统级Node模块目录:
    sudo rm -rf /usr/lib/node_modules
    
  • 删除全局命令软链接:
    sudo rm -rf /usr/bin/npm /usr/bin/npx /usr/bin/ng
    
  • 移除apt安装的Node.js(若存在):
    sudo apt purge --autoremove nodejs npm
    
  • 移除snap安装的Node.js:
    sudo snap remove node
    

2. 使用nvm安装兼容的Node.js版本

nvm是Node版本管理器,可避免系统级安装冲突,推荐采用:

  • 安装nvm:
    curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.7/install.sh | bash
    
    执行后重启终端,或运行source ~/.bashrc(zsh用户运行source ~/.zshrc)使nvm生效。
  • 安装满足Angular CLI要求的Node.js版本(选择v20.x,兼容npm v10且符合最低版本标准):
    nvm install 20
    
  • 设置为默认版本:
    nvm alias default 20
    

3. 验证安装并重新部署Angular CLI

  • 检查版本是否达标:
    node -v  # 应显示v20.x系列版本
    npm -v   # 应显示与v20兼容的npm版本(如v10.x)
    
  • 重新安装Angular CLI:
    npm install -g @angular/cli
    
  • 验证Angular CLI状态:
    ng version
    

补充说明

之前snap安装无效是因为系统PATH优先级问题,旧版本Node仍被优先调用。彻底清理后用nvm安装,可确保版本隔离和正确的PATH配置,从根源避免版本冲突。

内容的提问来源于stack exchange,提问作者Carlo ianni

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.02 03:04:55