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

升级到Angular 12后构建抛出Optimization error优化错误如何解决?

问题根因

这个错误是@ampproject/remapping库低版本的已知bug,该库用于构建时合并sourcemap,无法识别webpack生成的带!分隔符的内联loader路径类sourcemap地址,你打印的入参里的多段!分隔路径就是触发解析失败的直接原因,关闭脚本优化时因为跳过了sourcemap合并步骤所以不会触发错误。

可行解决方案

方案1:强制升级兼容版本的@ampproject/remapping

如果你的项目用yarn作为包管理工具,直接在package.json中添加resolutions配置:

"resolutions": {
  "@ampproject/remapping": "^2.1.2"
}

添加后重新执行yarn install安装依赖后再构建即可。
如果用npm,可安装npm-force-resolutions工具后执行相同配置生效。

方案2:关闭第三方依赖的sourcemap生成

修改angular.json中生产构建的sourcemap配置,关闭vendor包的sourcemap处理,避免触发路径解析错误:

{
  "projects": {
    "你的项目名": {
      "architect": {
        "build": {
          "configurations": {
            "production": {
              "sourceMap": {
                "scripts": true,
                "styles": true,
                "vendor": false,
                "hidden": false
              }
            }
          }
        }
      }
    }
  }
}

该配置只会关闭第三方依赖的sourcemap生成,不影响业务代码的sourcemap调试能力。

方案3:升级Angular构建相关依赖到更高修复版本

将@angular-devkit/build-angular、@angular/cli等12版本的相关依赖升级到12.2.18及以上的12.x稳定版本,官方后续版本已经将@ampproject/remapping依赖升级到了修复该bug的版本,升级后重新构建即可。

内容的提问来源于stack exchange,提问作者Enea G UnlimApps

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.30 00:06:04