安卓工作室4.2无法找到模拟器、设备或AVD管理器。

3

我刚把Android Studio从4.1.3更新到了4.2。

现在,它无法找到任何模拟器或我的手机。它显示一个"加载设备"的消息。

当我点击AVD管理器时,它也不会打开。它给我显示了这个错误:

java.lang.NoClassDefFoundError: org/w3c/dom/ElementTraversal
at java.lang.ClassLoader.defineClass1(Native Method)
at java.lang.ClassLoader.defineClass(ClassLoader.java:763)
at java.lang.ClassLoader.defineClass(ClassLoader.java:642)
at com.intellij.util.lang.UrlClassLoader._defineClass(UrlClassLoader.java:419)
at com.intellij.util.lang.UrlClassLoader.defineClass(UrlClassLoader.java:411)
at com.intellij.util.lang.UrlClassLoader._findClass(UrlClassLoader.java:369)
at com.intellij.util.lang.UrlClassLoader.findClass(UrlClassLoader.java:355)
at java.lang.ClassLoader.loadClass(ClassLoader.java:424)
at java.lang.ClassLoader.loadClass(ClassLoader.java:357)
at org.apache.xerces.parsers.AbstractDOMParser.startDocument(Unknown Source)
at org.apache.xerces.impl.dtd.XMLDTDValidator.startDocument(Unknown Source)
at org.apache.xerces.impl.XMLDocumentScannerImpl.startEntity(Unknown Source)
at org.apache.xerces.impl.XMLVersionDetector.startDocumentParsing(Unknown Source)
at org.apache.xerces.parsers.XML11Configuration.parse(Unknown Source)
at org.apache.xerces.parsers.XML11Configuration.parse(Unknown Source)
at org.apache.xerces.parsers.XMLParser.parse(Unknown Source)
at org.apache.xerces.parsers.DOMParser.parse(Unknown Source)
at org.apache.xerces.jaxp.DocumentBuilderImpl.parse(Unknown Source)
at javax.xml.parsers.DocumentBuilder.parse(DocumentBuilder.java:121)
at com.android.dvlib.DeviceSchema.getXmlSchemaVersion(DeviceSchema.java:398)
at com.android.sdklib.devices.DeviceParser.parseImpl(DeviceParser.java:496)
at com.android.sdklib.devices.DeviceParser.parse(DeviceParser.java:481)
at com.android.sdklib.devices.DeviceManager.initDefaultDevices(DeviceManager.java:287)
at com.android.sdklib.devices.DeviceManager.initDevicesLists(DeviceManager.java:265)
at com.android.sdklib.devices.DeviceManager.getDevice(DeviceManager.java:198)
at com.android.sdklib.internal.avd.AvdManager.parseAvdInfo(AvdManager.java:1451)
at com.android.sdklib.internal.avd.AvdManager.buildAvdList(AvdManager.java:1337)
at com.android.sdklib.internal.avd.AvdManager.<init>(AvdManager.java:402)
at com.android.sdklib.internal.avd.AvdManager.getInstance(AvdManager.java:443)
at com.android.tools.idea.avdmanager.AvdManagerConnection.initIfNecessary(AvdManagerConnection.java:211)
at com.android.tools.idea.avdmanager.AvdManagerConnection.getAvds(AvdManagerConnection.java:333)
at com.android.tools.idea.avdmanager.AvdDisplayList.refreshAvds(AvdDisplayList.java:230)
at com.android.tools.idea.avdmanager.AvdDisplayList.<init>(AvdDisplayList.java:194)
at com.android.tools.idea.avdmanager.AvdListDialog.<init>(AvdListDialog.java:43)
at org.jetbrains.android.actions.RunAndroidAvdManagerAction.openAvdManager(RunAndroidAvdManagerAction.java:74)
at org.jetbrains.android.actions.RunAndroidAvdManagerAction.actionPerformed(RunAndroidAvdManagerAction.java:65)
at com.intellij.openapi.actionSystem.ex.ActionUtil.performActionDumbAware(ActionUtil.java:282)
at com.intellij.openapi.actionSystem.ex.ActionUtil.performActionDumbAwareWithCallbacks(ActionUtil.java:276)
at com.intellij.openapi.actionSystem.impl.ActionButton.actionPerformed(ActionButton.java:182)
at com.intellij.openapi.actionSystem.impl.ActionButton.performAction(ActionButton.java:155)
at com.intellij.openapi.actionSystem.impl.ActionButton.processMouseEvent(ActionButton.java:439)
at java.awt.Component.processEvent(Component.java:6298)
at java.awt.Container.processEvent(Container.java:2236)
at java.awt.Component.dispatchEventImpl(Component.java:4889)
at java.awt.Container.dispatchEventImpl(Container.java:2294)
at java.awt.Component.dispatchEvent(Component.java:4711)
at java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:4888)
at java.awt.LightweightDispatcher.processMouseEvent(Container.java:4525)
at java.awt.LightweightDispatcher.dispatchEvent(Container.java:4466)
at java.awt.Container.dispatchEventImpl(Container.java:2280)
at java.awt.Window.dispatchEventImpl(Window.java:2746)
at java.awt.Component.dispatchEvent(Component.java:4711)
at java.awt.EventQueue.dispatchEventImpl(EventQueue.java:758)
at java.awt.EventQueue.access$500(EventQueue.java:97)
at java.awt.EventQueue$3.run(EventQueue.java:709)
at java.awt.EventQueue$3.run(EventQueue.java:703)
at java.security.AccessController.doPrivileged(Native Method)
at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:80)
at 

操作系统:macOS Big Sur - 11.2.3

我已经尝试卸载 Android Studio 并重新安装。

我已在 SDK 工具选项卡上安装了所有内容,以及 3 个不同的 SDK 平台。

设备加载中...


我认为这行代码 java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:80) 是出于安全原因或权限访问检查。 - Ramesh
1个回答

1
我曾经也遇到了同样的问题。最终,我找到了以下解决方案:在偏好设置文件夹中(在我的Mac上是~/Library/Application Support/Google/AndroidStudio4.2),有一个名为studio.jdk的文件,它指向Java 8版本。我编辑了该文件,并用更新的版本替换了它(在我的情况下是/Library/Java/JavaVirtualMachines/jdk-14.0.2.jdk)。然后avdmanager就可以在Android Studio 4.2中正常工作了。
我已在Google的问题跟踪器上提交了以下问题:https://issuetracker.google.com/issues/187890146。如果你也遇到了这个问题,请给它点赞。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接