Flutter导入firebase_core后运行失败,报bathrow相关错误
解决Firebase_core导入后编译失败的问题
错误分析
从报错信息来看,核心问题有两点:
firebase_core_platform_interface-4.5.3生成的代码存在拼写错误(bathrow应为throw),属于版本兼容性问题- 代码使用了Dart 3.0新增的records特性,但当前Dart版本未支持或未开启该特性
解决方案
1. 升级Flutter/Dart版本
你使用的Firebase依赖版本(firebase_core: ^2.7.1、cloud_firestore: ^4.4.4)要求Dart 3.0及以上,对应Flutter 3.10+版本。执行命令升级:
flutter upgrade
2. 明确Dart版本要求
在pubspec.yaml顶部的environment字段中指定兼容的Dart版本:
environment: sdk: '>=3.0.0 <4.0.0'
3. 清理缓存并重拉依赖
执行以下操作彻底重置依赖环境:
flutter clean rm pubspec.lock flutter pub get
4. 覆盖有问题的依赖版本
如果上述步骤无效,强制指定firebase_core_platform_interface的稳定版本,避开有拼写错误的4.5.3版本。在pubspec.yaml中添加:
dependency_overrides: firebase_core_platform_interface: 4.8.0
添加后再次执行flutter pub get。
5. 验证Kotlin版本配置
确保android/build.gradle中的Kotlin版本不低于1.7.0(Firebase最新依赖的要求):
ext.kotlin_version = '1.7.10'
内容的提问来源于stack exchange,提问作者Mihailo Petrovic
相关产品推荐
相关产品推荐

