Android Studio 3.1 Gradle Sync故障求助:Mac OSX重装后仍报错
解决Gradle Sync报错“Uninitialized object exists on backward branch 70”的方案
我之前在Stack Overflow社区里见过不少Mac OSX用户碰到和你一模一样的问题——哪怕重装了Android Studio全组件(包括SDK),搭配JDK 1.8.0_161时还是会出现这个Gradle Sync报错,这其实是这个特定JDK版本的JIT编译器bug导致的,给你几个亲测有效的解决办法:
更换JDK版本(最彻底的方案):
这个报错和JDK 1.8.0_161的底层bug直接相关,你可以降级到JDK 1.8.0_152及以下版本,或者升级到1.8.0_171及以上版本。安装完成后记得在Android Studio里配置新的JDK路径:- 打开Android Studio,进入
File > Project Structure > SDK Location - 在
JDK location选项中选择你新安装的JDK路径
- 打开Android Studio,进入
临时禁用JIT编译器:
如果暂时不想更换JDK,可以通过Gradle配置关闭JIT来绕过这个问题:- 找到项目根目录下的
gradle.properties文件 - 添加一行配置:
org.gradle.jvmargs=-Xmx1536M -Djava.compiler=NONE - 重新执行Gradle Sync操作
- 找到项目根目录下的
清理Gradle缓存:
有时候损坏的缓存文件也会引发这类奇怪的同步问题,你可以尝试手动清理:- 关闭Android Studio
- 删除
~/.gradle/caches目录下的所有内容 - 重启Android Studio后重新进行Gradle Sync
其中更换JDK版本是最推荐的方案,很多用户按照这个方法操作后都顺利解决了问题。
内容的提问来源于stack exchange,提问作者Luc Knaepkens-Düllberg
相关产品推荐
相关产品推荐

