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

添加Firebase Crashlytics时遭遇Gradle ProjectConfigurationException构建错误

Firebase Crashlytics 集成后 Gradle 构建失败解决方案

我帮你分析下这个问题——你在演示项目里成功跑通了Firebase Crashlytics,但迁移到正在开发的项目时遇到了Gradle配置异常,报错信息如下:

org.gradle.api.ProjectConfigurationException: A problem occurred configuring project ':app'. 
at org.gradle.configuration.project.LifecycleProjectEvaluator.addConfigurationFailure(LifecycleProjectEvaluator.java:94) 
at org.gradle.configuration.project.LifecycleProjectEvaluator.notifyAfterEvaluate(LifecycleProjectEvaluator.java:89) 
at org.gradle.configuration.project.LifecycleProjectEvaluator.doConfigure(LifecycleProjectEvaluator.java:70) 
at org.gradle.configuration.project.LifecycleProjectEvaluator.access$100(LifecycleProjectEvaluator.java:34) 
at org.gradle.configuration.project.LifecycleProjectEvaluator$ConfigureProject.run(LifecycleProjectEvaluator.java:110) 
at org.gradle.internal.progress.DefaultBuildOperationExecutor$RunnableBuildOperationWorker.execute(DefaultBuildOperationExecutor.java:336) 
at org.gradle.internal.progress.DefaultBuildOperationExecutor$RunnableBuildOperationWorker.execute(DefaultBuildOperationExecutor.java:328) 
at org.gradle.internal.progress.DefaultBuildOperationExecutor.execute(DefaultBuildOperationExecutor.java:199) 
at org.gradle.internal.progress.DefaultBuildOperationExecutor.run(DefaultBuildOperationExecutor.java:110) 
at org.gradle.configuration.project.LifecycleProjectEvaluator.evaluate(LifecycleProjectEvaluator.java:50) 
at org.gradle.api.internal.project.DefaultProject.evaluate(DefaultProject.java:666) 
at org.gradle.api.internal.project.DefaultProject.evaluate(DefaultProject.java:135) 
at org.gradle.execution.TaskPathProjectEvaluator.configure(TaskPathProjectEvaluator.java:35) 
at org.gradle.execution.TaskPathProjectEvaluator.configureHierarchy(TaskPathProjectEvaluator.java:62) 
at org.gradle.configuration.DefaultBuildConfigurer.configure(DefaultBuildConfigurer.java:38) 
at org.gradle.initialization.DefaultGradleLauncher$ConfigureBuild.run(DefaultGradleLauncher.java:249) 
at org.gradle.internal.progress.DefaultBuildOperationExecutor$RunnableBuildOperationWorker.execute(DefaultBuildOperationExecutor.java:336) 
at org.gradle.internal.progress.DefaultBuildOperationExecutor$RunnableBuildOperationWorker.execute(DefaultBuildOperationExecutor.java:328) 
at org.gradle.internal.progress.DefaultBuildOperationExecutor.execute(DefaultBuildOperationExecutor.java:199) 
at org.gradle.internal.progress.DefaultBuildOperationExecutor.run(DefaultBuildOperationExecutor.java:110) 
at org.gradle.initialization.DefaultGradleLauncher.configureBuild(DefaultGradleLauncher.java:167) 
at org.gradle.initialization.DefaultGradleLauncher.doBuildStages(DefaultGradleLauncher.java:126) 
at org.gradle.initialization.DefaultGradleLauncher.getConfiguredBuild(DefaultGradleLauncher.java:104) 
at org.gradle.internal.invocation.GradleBuildController$2.call(GradleBuildController.java:87) 
at org.gradle.internal.invocation.GradleBuildController$2.call(GradleBuildController.java:84) 
at org.gradle.internal.work.DefaultWorkerLeaseService.withLocks(DefaultWorkerLeaseService.java:152) 
at org.gradle.internal.invocation.GradleBuildController.doBuild(GradleBuildController.java:100) 
at org.gradle.internal.invocation.GradleBuildController.configure(GradleBuildController.java:84) 
at org.gradle.tooling.internal.provider.runner.ClientProvidedBuildActionRunner.run(ClientProvidedBuildActionRunner.java:64) 
at org.gradle.launcher.exec.ChainingBuildActionRunner.run(ChainingBuildActionRunner.java:35) 
at org.gradle.launcher.exec.ChainingBuildActionRunner.run(ChainingBuildActionRunner.java:35) 
at org.gradle.tooling.internal.provider.ValidatingBuildActionRunner.run(ValidatingBuildActionRunner.java:32) 
at org.gradle.launcher.exec.RunAsBuildOperationBuildActionRunner$1.run(RunAsBuildOperationBuildActionRunner.java:43) 
at org.gradle.internal.progress.DefaultBuildOperationExecutor$RunnableBuildOperationWorker.execute(DefaultBuildOperationExecutor.java:336) 
at org.gradle.internal.progress.DefaultBuildOperationExecutor$RunnableBuildOperationWorker.execute(DefaultBuildOperationExecutor.java:328) 
at org.gradle.internal.progress.DefaultBuildOperationExecutor.execute(DefaultBuildOperationExecutor.java:199) 
at org.gradle.internal.progress.DefaultBuildOperationExecutor.run(DefaultBuildOperationExecutor.java:110) 
at org.gradle.launcher.exec.RunAsBuildOperationBuildActionRunner.run(RunAsBuildOperationBuildActionRunner.java:40) 
at org.gradle.tooling.internal.provider.SubscribableBuildActionRunner.run(SubscribableBuildActionRunner.java:51) 
at org.gradle.launcher.exec.InProcessBuildActionExecuter.execute(InProcessBuildActionExecuter.java:47) 
at org.gradle.launcher.exec.InProcessBuildActionExecuter.execute(InProcessBuildActionExecuter.java:30) 
at org.gradle.launcher.exec.BuildTreeScopeBuildActionExecuter.execute(BuildTreeScopeBuildActionExecuter.java:39) 
at org.gradle.launcher.exec.BuildTreeScopeBuildActionExecuter.execute(BuildTreeScopeBuildActionExecuter.java:25) 
at org.gradle.tooling.internal.provider.ContinuousBuildActionE

这个ProjectConfigurationException一般是Gradle版本兼容问题、配置步骤遗漏,或者依赖冲突导致的。结合你演示项目成功的情况,大概率是目标项目的Gradle配置和演示项目有差异,下面是几个针对性的排查步骤:


1. 核对Gradle插件版本兼容性

这是最常见的坑,一定要确保Project级和Module级的插件版本匹配,且和Gradle本身版本兼容:

  • 打开根目录的build.gradle,检查这两个插件的版本(建议用Firebase官网推荐的最新兼容版本):
    buildscript {
        dependencies {
            classpath 'com.google.gms:google-services:4.4.1'
            classpath 'com.google.firebase:firebase-crashlytics-gradle:2.9.9'
        }
    }
    
  • 再检查gradle-wrapper.properties里的Gradle版本,比如用上面的插件的话,Gradle建议7.0以上:
    distributionUrl=https\://services.gradle.org/distributions/gradle-7.5-bin.zip
    

2. 验证App级build.gradle的配置完整性

确保你没有漏掉任何必要的配置步骤:

  • 确认Module级build.gradle顶部已经应用了所有需要的插件:
    plugins {
        id 'com.android.application'
        id 'com.google.gms.google-services'
        id 'com.google.firebase.crashlytics'
    }
    
  • 检查Crashlytics的依赖是否正确添加:
    dependencies {
        implementation 'com.google.firebase:firebase-crashlytics:18.6.2'
        // 可选但推荐:搭配Firebase Analytics使用
        implementation 'com.google.firebase:firebase-analytics:21.3.0'
    }
    

3. 清理缓存并重新构建

有时候缓存会导致奇怪的问题,先清掉再试:

  • 执行命令行清理:
    ./gradlew clean
    ./gradlew build --refresh-dependencies
    
  • 或者在Android Studio里点击File > Sync Project with Gradle Files,然后重新构建项目。

4. 排查依赖冲突

如果项目里有其他Firebase或Google服务依赖,可能会出现版本冲突:

  • 用命令查看依赖树,找冲突的依赖:
    ./gradlew app:dependencies
    
  • 如果发现冲突,可以强制统一版本,比如在Module级build.gradle里添加:
    configurations.all {
        resolutionStrategy.force 'com.google.firebase:firebase-crashlytics:18.6.2'
        resolutionStrategy.force 'com.google.gms:google-services:4.4.1'
    }
    

5. 检查google-services.json文件

别用演示项目的配置文件!确保目标项目的app目录下,放的是从Firebase控制台下载的、对应当前项目包名的google-services.json。


如果以上步骤都试过还是报错,建议查看完整的报错日志(你的日志被截断了),通常在ProjectConfigurationException下面会有更具体的原因,比如某个依赖找不到、配置语法错误等,根据具体错误再针对性解决会更高效。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.27 07:32:11