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

Unity3d接入Firebase Cloud后Gradle构建报错:无法确定compileDebugJavaWithJavac依赖

问题解决方案

错误根因

你遇到的Cannot set the value of read-only property 'class' for object of type org.gradle.api.internal.artifacts.DefaultExcludeRule报错,本质是Firebase Cloud新版本依赖的Gradle排除规则语法,和Unity 2020.3.19f1自带的Gradle 6.1.1版本不兼容,和Android许可证没有关联,因此执行flutter doctor --android-licenses无法解决问题。

可行解决方案

  • 方案1:降级Firebase Unity SDK版本
    回退使用Firebase Unity SDK 8.10.0及更早版本,该版本区间的依赖规则兼容Gradle 6.1.1,无需额外修改配置即可正常构建。
  • 方案2:替换Unity使用的Gradle版本
    1. 下载Gradle 6.7.1到7.0.2之间的正式版本(过高版本Unity 2020.3分支不支持)
    2. 打开Unity菜单编辑>首选项>外部工具,找到Android分类下的Gradle配置项,勾选自定义并选择你下载解压后的Gradle根目录路径
    3. 重启Unity后重新执行构建即可
  • 方案3:修改Gradle模板的排除规则写法
    若不想变动SDK和Gradle版本,可手动调整依赖配置:
    1. 打开Unity播放器设置,进入发布设置>构建板块,勾选自定义主Gradle模板
    2. 打开项目生成的mainTemplate.gradle文件,找到Firebase相关依赖下的exclude规则,将所有class: "xxx"的写法,替换为group: "xxx", module: "xxx"的拆分式写法,规避对只读class属性的直接赋值操作。

注:日志中出现的android.enableR8=false废弃警告不会导致本次构建失败,仅在后续升级Android Gradle插件到5.0+版本时需要调整配置开启R8即可。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.24 22:06:00