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

在Android Jellyfish AGP 8.4.0中集成Firebase Crashlytics遇循环依赖错误

解决AGP 8.4.0 + Firebase Crashlytics循环依赖问题

针对你遇到的循环依赖错误(涉及dataBindingGenBaseClassesDebug、mergeDebugResources、injectCrashlyticsMappingFileIdDebug任务),可以尝试以下解决方案:

  • 确保Crashlytics插件与AGP版本兼容
    检查com.google.firebase:firebase-crashlytics-gradle插件版本,AGP 8.4.0需搭配3.0.0及以上版本的Crashlytics插件。在项目根目录的build.gradle中更新插件版本:

    dependencies {
        classpath 'com.google.firebase:firebase-crashlytics-gradle:3.0.2'
    }
    
  • 手动调整任务执行顺序打破循环
    在app模块的build.gradle中添加任务依赖规则,让injectCrashlyticsMappingFileIdDebug在dataBindingGenBaseClassesDebug完成后再执行,而非依赖它:

    tasks.named('injectCrashlyticsMappingFileIdDebug') {
        mustRunAfter 'dataBindingGenBaseClassesDebug'
    }
    // 若Release版本也有问题,同步添加Release版本任务规则
    tasks.named('injectCrashlyticsMappingFileIdRelease') {
        mustRunAfter 'dataBindingGenBaseClassesRelease'
    }
    
  • 临时关闭Crashlytics Mapping File ID自动注入(测试用)
    若上述方法无效,可先关闭自动注入功能验证是否为该逻辑导致循环,在app模块的build.gradle中配置:

    firebaseCrashlytics {
        mappingFileIdInjectEnabled false
    }
    

    注意:此设置会影响Crashlytics对mapping文件的关联,仅作为排查手段,不建议长期使用。

  • 清理Gradle缓存并重新同步
    执行以下命令清理缓存,再重启Android Studio并同步项目:

    ./gradlew clean
    rm -rf .gradle/
    
  • 检查自定义插件/任务的干扰
    确认项目中是否存在自定义Gradle插件或任务,修改了Data Binding或资源合并相关任务的依赖关系,如有则调整其逻辑避免冲突。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.24 07:53:16