Gradle同步报错:找不到com.android.prefs.AndroidLocation.getFolder方法
解决方法:找不到方法
java.lang.String com.android.prefs.AndroidLocation.getFolder(com.android.utils.EnvironmentProvider) 错误信息
无法找到方法'java.lang.String com.android.prefs.AndroidLocation.getFolder(com.android.utils.EnvironmentProvider)'
已尝试操作
- 删除
.gradle文件夹后重新同步 - 重装Java和Android Studio
- 执行官方建议:重新下载依赖并同步、停止所有Gradle构建进程、关闭IDE并终止Java进程
额外可行解决办法
1. 匹配Gradle与Android Gradle Plugin(AGP)版本
Gradle和AGP版本不兼容是此类方法缺失问题的核心诱因,需严格对应版本:
- 打开项目根目录的
build.gradle(或build.gradle.kts),确认com.android.tools.build:gradle的版本 - 打开
gradle/wrapper/gradle-wrapper.properties,检查distributionUrl对应的Gradle版本 - 参考官方版本映射调整(如AGP 7.4对应Gradle 7.5,AGP 8.0对应Gradle 8.0),修改后重新同步项目
2. 清理Android Studio缓存
- 打开Android Studio,选择
File > Invalidate Caches... - 勾选
Invalidate and Restart,等待IDE重启并重建缓存
3. 排查第三方插件冲突
- 打开项目根目录的
build.gradle,逐个注释第三方插件(如自定义打包、混淆插件) - 每次注释后同步项目,定位冲突插件,更换兼容版本或直接移除
4. 验证JDK环境变量
- 确保
JAVA_HOME指向的JDK版本符合AGP要求(如AGP 8.x需JDK 17) - 终端执行
echo $JAVA_HOME(Linux/macOS)或echo %JAVA_HOME%(Windows)验证路径,不匹配则调整环境变量
5. 迁移代码到新项目
若以上方法无效:
- 创建同类型空白新项目,确认能正常构建
- 逐步迁移原项目的代码、资源、依赖,每次迁移后同步验证,定位问题文件
内容的提问来源于stack exchange,提问作者venkatesh
相关产品推荐
相关产品推荐

