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

Angular 6升级至13后JIT compiler unavailable错误求助

解决Angular 6升13后启动报"JIT compiler unavailable"的问题

以下是针对该问题的排查和解决思路:

1. 统一Angular核心包版本

你的package.json中@angular/compiler-cli和@angular/language-service版本为13.1.3,而其他Angular核心依赖(如@angular/core、@angular/compiler)是13.2.0,版本不一致可能导致编译和运行时冲突。

  • 修改package.json,将这两个依赖的版本改为^13.2.0
  • 执行rm -rf node_modules package-lock.json,重新安装依赖:npm install

2. 检查Angular构建配置

查看angular.json中build的完整配置,尤其是生产环境配置:

  • 确认configurations.production中是否设置了"aot": true,Angular 13生产构建默认开启AOT,但如果代码存在动态模板、动态组件等需要JIT的场景,需确保@angular/compiler被正确打包
  • 检查是否因"buildOptimizer": true导致@angular/compiler被tree-shaking移除,可临时在build命令中添加--build-optimizer=false测试:ng build --prod --build-optimizer=false

3. 升级core-js版本

当前使用的core-js@2.5.4版本过低,Angular 12+推荐使用core-js 3.x版本,旧版本可能导致运行时环境不兼容:

  • 将package.json中core-js版本改为^3.20.0,重新安装依赖后测试

4. 清理构建缓存并重新编译

缓存可能导致旧代码残留,执行以下步骤:

  • 清理Angular CLI缓存:ng cache clean
  • 删除dist目录:rm -rf dist
  • 重新执行构建:ng build --prod

5. 检查第三方库兼容性

部分第三方库可能未完全适配Angular 13的Ivy编译模式,引发JIT依赖问题:

  • 临时移除ng-busy、ngx-spinner等第三方UI库,重新构建启动,排查是否由这些库引发
  • 若确认是第三方库问题,查看其官方文档的Angular 13适配说明,或更换替代库

6. 验证tsconfig配置

检查tsconfig.app.json中的angularCompilerOptions:

  • 确认"enableIvy": true(Angular 13默认开启,禁用会导致异常)
  • 检查是否有"exclude"规则意外排除了@angular/compiler相关文件

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.19 15:00:52