Search code examples
androidandroid-studiosdkavd-managerandroid-studio-4.2

Android studio 4.2 doesn't find emulators, devices or AVD Manager


I just updated Android Studio from 4.1.3 to 4.2.

Now, it doesn't find any emulator or even my cell phone. It shows a message "Loading devices".

Also, when I click on AVD Manager, it doesn't open. It shows me this error:

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 

OS: macOS Big Sur - 11.2.3

I already tried uninstall android studio and make a fresh install.

I have installed everythings on SDK Tools tab, and 3 different SDK platforms.

Loading Devices...


Solution

  • I had struggled with the same problem. Finally I found the following solution: In the Preferences folder (on my Mac ~/Library/Application Support/Google/AndroidStudio4.2) there was a file studio.jdk that pointed to Java 8 version. I edited the file, and replaced it with a newer version (in my case /Library/Java/JavaVirtualMachines/jdk-14.0.2.jdk). Then avdmanager started to work from within Android Studio 4.2.

    I have filed the following issue on Google's issue tracker: https://issuetracker.google.com/issues/187890146. Please star it, if you have been hit by this problem.