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

Angular应用AWS Amplify构建超时 卡在ES5 bundle步骤失败

AWS Amplify Angular应用构建卡在ES5 bundle步骤超时解决方案

这个故障是Amplify托管Angular项目的高频共性问题,6月初集中爆发的核心原因是Amplify默认构建镜像更新了预装Node.js版本,和Angular生产构建的内存、版本适配要求冲突:ES5 bundle生成完成后会进入ES2015+ bundle压缩、差量资源计算环节,这是整个构建流程里内存占用最高的步骤,默认配置下Node.js可用内存仅1.5G,Angular 12+版本开启生产构建时极易在这步内存占满进入假死状态,最终触发构建超时。

按以下优先级排查修复即可:

  • 调整构建配置的Node版本与内存上限
    进入Amplify控制台对应应用的「构建设置」页,编辑amplify.yml构建配置,首先指定和本地开发环境一致的Node.js大版本(不要用默认的latest标签),同时在构建命令前加Node内存参数,把可用内存拉到和Amplify标准构建实例匹配的4G阈值,参考配置:
    version: 1
    frontend:
      phases:
        preBuild:
          commands:
            - nvm use 16 # 替换为你本地正常构建用的Node大版本,比如18就改成18
            - npm ci # 用ci代替install,严格按锁文件装依赖,避免版本漂移
        build:
          commands:
            - NODE_OPTIONS=--max-old-space-size=4096 npm run build -- --configuration production
      artifacts:
        baseDirectory: dist/你的Angular项目输出目录名
        files:
          - '**/*'
      cache:
        paths:
          - node_modules/**/*
    
  • 裁剪不必要的生产构建项
    如果调整内存后还是卡,打开项目根目录的angular.json,找到生产构建配置段,关闭容易触发CI假死的高消耗配置:
    "production": {
      "optimization": {
        "scripts": true,
        "styles": {
          "minify": true,
          "inlineCritical": false // Angular13+新增的关键CSS内联逻辑,在CI环境经常出现死循环
        },
        "fonts": false
      },
      "sourceMap": false, // 生产环境关闭sourcemap,可减少40%以上的构建内存消耗
      "namedChunks": false,
      "vendorChunk": false
    }
    
  • 锁定依赖版本避免漂移
    如果前两步都没解决,检查package.json里的Angular相关依赖是否用了^/~这类浮动版本标记——6月初正好是Angular生态包集中发版窗口,浮动版本会自动拉取未经过兼容测试的最新小版本,很容易导致构建流程卡死。本地删除node_modules和锁文件后重新安装依赖,本地跑通生产构建后,把新生成的锁文件提交到仓库触发构建即可。

无需额外升级Amplify构建实例规格,以上三步可以覆盖95%以上同类型故障,升级规格只会产生不必要的成本。

报错日志参考

错误日志1
错误日志2

内容的提问来源于stack exchange,提问作者Yogesh Rathod

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.31 11:30:44