build.gradle中classpath不匹配引发Gradle构建依赖解析失败问题
Gradle构建classpath不匹配+Binary store读取错误解决方案
报错信息参考
无法确定任务':app:compileDebugJavaWithJavac'的依赖项。
无法通知依赖项解析监听器。
位于C:\Users\abc\AppData\Local\Temp\gradle11645302661581564201.bin的Binary store读取数据出错,偏移量628139,文件是否存在?是
位于C:\Users\abc\AppData\Local\Temp\gradle11645302661581564201.bin的Binary store读取数据出错,偏移量628139,文件是否存在?是
排查解决步骤
1. 清理Gradle临时缓存
报错中的.bin文件为Gradle生成的临时依赖解析缓存,文件损坏会触发读取异常,操作如下:
- 关闭所有正在运行的Gradle、Java相关进程
- 进入
C:\Users\abc\AppData\Local\Temp\目录,删除所有前缀为gradle的.bin缓存文件 - 执行项目清理命令:
gradlew clean
2. 校验classpath配置一致性
- 确认根目录build.gradle中Android Gradle Plugin(AGP)版本与Gradle版本适配,如AGP 7.4对应Gradle 7.5及以上版本,版本不匹配会直接触发classpath不匹配报错
- 检查repositories块是否配置了可用的镜像源,避免依赖拉取不全,参考配置:
repositories { maven { url 'https://maven.aliyun.com/repository/google' } maven { url 'https://maven.aliyun.com/repository/public' } google() mavenCentral() } - 执行
gradlew app:dependencies打印依赖树,排查多模块依赖版本冲突,统一冲突依赖的版本号
3. 清理全局Gradle缓存
上述操作无效时,说明全局Gradle缓存损坏:
- 进入
C:\Users\abc\.gradle\caches目录,删除对应Gradle版本的缓存文件夹,可直接删除整个caches目录 - 重新执行构建命令:
gradlew assembleDebug,Gradle会自动重新拉取所有依赖
4. 兼容适配处理
仍报错时执行以下操作:
- 修改
gradle/wrapper/gradle-wrapper.properties中的distributionUrl参数,指定与AGP版本完全匹配的Gradle版本 - 清除IDE构建缓存后重启,如Android Studio选择File -> Invalidate Caches,勾选清除文件系统缓存选项后重启
内容的提问来源于stack exchange,提问作者Radhen Thirstydevs
相关产品推荐
相关产品推荐

