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

AngularDart 4是否兼容Dart 2及build_runner 0.8?

解决Angular 4.x与build_runner 0.8不兼容的问题

你碰到的是Dart 2升级过程中典型的依赖冲突问题——Angular 4.x的构建相关依赖(比如angular_compiler)还基于旧版的build生态体系,而build_runner 0.8+已经适配了Dart 2稳定版的新构建标准,两者自然无法兼容。下面给你两个可行的解决方向:

方案1:升级Angular到兼容版本(推荐长期维护)

Angular 5.x及以上版本已经完全适配build_runner 0.8+和Dart 2稳定版,这也是官方推荐的升级路径。你可以修改pubspec.yaml如下:

name: JRapha
description: A web app that uses AngularDart Components
version: 0.0.1
environment:
  sdk: '>=2.0.0 <3.0.0' # 调整为Dart 2稳定版的版本范围
dependencies:
  angular: ^5.0.0 # 可选择更高的稳定版,比如^6.0.0
dev_dependencies:
  angular_test: ^2.0.0 # 同步升级angular_test到对应版本
  build_runner: ^0.8.0 # 现在可以正常使用该版本
  build_web_compilers: ^2.0.0 # 新增Web编译依赖

修改完成后,执行以下命令更新依赖:

pub get

如果遇到缓存问题,可以先运行pub cache repair再获取依赖。另外注意:Dartium在Dart 2稳定版后已被弃用,升级后建议用Chrome作为调试环境,通过webdev serve启动项目。

方案2:保留Angular 4.x,降级build_runner版本

如果暂时无法升级Angular,你可以将build_runner降级到0.7.x的稳定版本,这个版本和Angular 4.x的依赖体系兼容。修改pubspec.yaml的dev依赖部分:

dev_dependencies:
  angular_test: ^1.0.0
  build_runner: ^0.7.15 # 使用0.7系列的稳定版

同样执行pub get完成依赖更新。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.25 08:12:46