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

Angular 11执行build构建报错Call retries were exceeded如何解决?

Angular 11 构建报错 Call retries were exceeded 解决方案

该错误通常由Node构建内存不足、Angular生态依赖版本不兼容、多进程编译worker调用超时三类原因导致,对应排查解决步骤如下:

  • 第一步:对齐所有Angular生态依赖版本
    当前package.json存在多处版本不匹配问题,是引发构建异常的核心诱因之一,需要统一版本:
    1. dependencies中@angular/cli版本为~11.2.14,但devDependencies中@angular/cli仅为~11.0.0,统一修改为~11.2.14
    2. devDependencies中@angular-devkit/build-angular版本为~0.901.6,属于Angular 9对应的工具版本,和Angular 11完全不兼容,修改为~0.1102.14
    3. @angular/cdk版本为^12.1.3,高于Angular核心的11版本,降级为~11.2.13和Angular Material版本对齐
    4. @angular/compiler-cli、@angular/language-service都统一修改为~11.2.14版本
  • 第二步:清理损坏的依赖缓存并重装依赖
    依次执行以下命令:
    # 删除现有依赖和锁文件,Windows环境可手动删除node_modules文件夹和package-lock.json文件
    rm -rf node_modules package-lock.json
    # 清理npm全局缓存
    npm cache clean --force
    # 重新安装依赖
    npm install
    
  • 第三步:扩容Node构建内存,避免内存溢出导致worker进程崩溃
    修改package.json中的build脚本,增加Node内存上限:
    "build": "node --max_old_space_size=8192 node_modules/@angular/cli/bin/ng build --extract-css"
    
    8192代表分配8G运行内存,可根据自己设备配置调整为4096(4G)或16384(16G)。
  • 第四步:禁用多进程编译/调整编译配置,避免worker调用超时
    如果调整后仍然报错,可以在构建命令后增加--max-workers=1参数强制单进程编译,规避多进程worker调度异常:
    "build": "node --max_old_space_size=8192 node_modules/@angular/cli/bin/ng build --extract-css --max-workers=1"
    
    也可以修改angular.json中build节点的配置,关闭不稳定的inlineCritical样式优化:
    "optimization": {
      "scripts": true,
      "styles": {
        "minify": true,
        "inlineCritical": false
      },
      "fonts": true
    }
    

内容的提问来源于stack exchange,提问作者Akash Gupta

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.05 08:00:03