React Native Android gradle同步报DefaultProjectDescriptor无logger属性如何解决
问题根因
该错误由Gradle版本与项目配置不兼容导致:Gradle 6.x之后org.gradle.initialization.DefaultProjectDescriptor类不再直接暴露logger属性,旧版react-native-unimodules的自动注入代码会直接调用logger触发属性缺失异常,和你当前使用的AGP 4.1.0+Gradle 6.8环境不匹配。
解决方案
- 第一步:修改根目录
settings.gradle文件,搜索所有直接调用logger的代码行,全部替换为project.logger - 第二步:调整unimodules依赖版本:
- 执行
yarn remove react-native-unimodules卸载旧版不兼容依赖 - 如果你需要保留unimodules能力,安装适配版本:
yarn add react-native-unimodules@0.14.10,该版本是唯一匹配AGP 4.1.0、Gradle 6.8的官方稳定版
- 执行
- 第三步:清理缓存重新同步
- 进入安卓目录执行清理命令:
cd android && ./gradlew clean - 清除Android Studio缓存:顶部菜单栏选择File > Invalidate Caches,勾选Clear file system cache and local history后点击Invalidate and Restart
- 编辑器重启后重新执行Gradle同步即可完成修复
- 进入安卓目录执行清理命令:
额外验证项
如果同步仍失败,检查项目级build.gradle的repositories配置,确保google()、mavenCentral()放在jcenter()之前,jcenter服务已下线,不可作为优先依赖拉取源。
内容的提问来源于stack exchange,提问作者rohitpaniker
相关产品推荐
相关产品推荐

