Flutter构建失败报FAILURE: Build failed with an exception错误求助
Flutter构建firebase-analytics依赖缺失报错解决方案
报错摘要:
- 顶层报错:FAILURE: Build failed with an exception
- 错误原因:无法确定任务
:app:lintVitalRelease的依赖项- 详细依赖报错:无法解析配置
:app:debugAndroidTestCompileClasspath的所有构件,找不到com.google.firebase:firebase-analytics:依赖包,该依赖为项目:app所需的必要依赖。
排查步骤
- 检查项目级
build.gradle(路径:android/build.gradle)中是否配置了Google Maven仓库,确认repositories块下存在google()和mavenCentral()配置,且优先级高于已停止维护的jcenter源 - 检查app级
build.gradle(路径:android/app/build.gradle)中firebase-analytics依赖的版本号是否填写完整,报错信息中com.google.firebase:firebase-analytics:后缀为空,大概率是版本号缺失导致的匹配失败 - 检查本地Flutter项目的
pubspec.yaml中firebase相关依赖是否配置正确,是否存在跨依赖版本冲突问题 - 检查本地网络是否正常,是否存在代理拦截Google仓库资源请求的情况
- 检查Android SDK的build-tools版本是否与项目要求的firebase依赖版本兼容
解决方法
- 补全firebase-analytics依赖版本:如果是在app级build.gradle手动引入的依赖,补充完整版本号即可,示例:
implementation "com.google.firebase:firebase-analytics:21.3.0",可选择官方发布的稳定版本 - 修复仓库配置:在项目级build.gradle的
allprojects→repositories块中确保已添加Google官方源,也可补充国内镜像源提升拉取成功率,配置示例:
allprojects { repositories { google() mavenCentral() // 国内阿里云镜像源按需添加 maven { url 'https://maven.aliyun.com/repository/google' } maven { url 'https://maven.aliyun.com/repository/public' } } }
- 同步Flutter依赖:执行
flutter clean清理本地构建缓存后,再执行flutter pub get重新拉取项目依赖,之后重新构建即可 - 版本冲突修复:如果存在多firebase组件版本冲突问题,可引入firebase bom统一管理所有firebase依赖版本,无需单独填写各组件版本号,示例:
implementation platform('com.google.firebase:firebase-bom:32.7.0') implementation 'com.google.firebase:firebase-analytics'
- 临时规避方案(仅测试场景使用):如果不需要release阶段的lint检查,可在app级build.gradle的android块中添加配置禁用对应lint任务:
android { lintOptions { checkReleaseBuilds false abortOnError false } }
内容的提问来源于stack exchange,提问作者Ashrafi Abir
相关产品推荐
相关产品推荐

