在将 Android Studio 更新到 2.2 版(在 Windows 10 上)之后,不知何故,第二天早上,当 gradle 在任何项目上构建时,我收到了这样的错误:
仅允许从事件调度线程进行写访问
尽管 gradlew -build 命令工作并成功完成。我尝试了典型的 Android 开发者的 WTF 修复集:清理构建,使缓存无效,删除构建文件夹,删除 .gradle 文件夹,尝试不同的 gradle 设置,甚至重新安装 Android Studio,但没有任何帮助。
我创建这个问题只是为了与社区分享我的经验,因为我在上面浪费了两个小时。
所以问题的结论是Android Studio与我安装的JDK版本冲突,所以当我检查JDK位置(文件→项目结构→SDK位置)时解决了这个问题,勾选“使用嵌入式JDK”复选框并将JDK位置设置为“路径Android Studio'\Android Studio\jre
当 android studio 与安装的 jdk 版本冲突时出现问题,转到(文件 -> 项目结构 -> SDK 位置),选中“使用嵌入式 JDK”复选框并将 jdk 位置设置为“android studio 的路径”\Android Studio\jre :) 简单的
这对我不起作用,我运行了“gradle clean build”命令,我发现 gradle 中的一行存在冲突,将其删除并同步项目(as in this pic)
https://i.stack.imgur.com/CZsv5.png
我的问题是我在清理硬盘空间时删除了我正在使用的 SDK。
要解决此问题,首先检查您安装了哪些 SDK,或在工具 > SDK 管理器中安装一个。
然后,您可以将 app build.gradle 中的 compileSdkVersion 和 targetSdkVersion 更改为您安装的 sdk 版本。
否则,您可以重新安装您使用的任何 sdk。
https://i.stack.imgur.com/RttmM.jpg