AGP 4.2.0 搭配 Java 11 编译失败 数据绑定类找不到Android系统包
问题排查与解决步骤
- 确认AGP版本:首先检查项目根目录
build.gradle中Android Gradle Plugin的版本号,必须升级到4.2.0及以上版本,低于该版本的AGP对Java 11的支持存在缺陷,会直接导致databinding生成类无法正确引用Android SDK类。 - 统一全模块Java版本配置:不要仅修改主app模块的编译配置,需要确保所有子module、依赖的library模块的
build.gradle都配置了相同的Java 11参数:
compileOptions { sourceCompatibility JavaVersion.VERSION_11 targetCompatibility JavaVersion.VERSION_11 } kotlinOptions { jvmTarget = "11" }
- 清理残留缓存与构建产物:
- 关闭Android Studio
- 删除项目根目录下的
.gradle、.idea文件夹 - 删除所有module目录下的
build文件夹 - 重启Android Studio后重新执行构建操作
- 检查全局Gradle配置:查看项目根目录下的
gradle.properties文件,确认没有配置org.gradle.java.home指向旧版本JDK,也没有其他强制指定Java版本的冲突参数。 - 临时关闭混淆验证:如果debug构建开启了R8/Proguard,临时关闭混淆后重新编译,排查是否是混淆规则误裁剪了databinding依赖的基础类。
内容的提问来源于stack exchange,提问作者Nick Titov
相关产品推荐
相关产品推荐

