Flutter Doctor --android-licenses : Exception in thread "main" java.lang.NoClassDefFoundError

AndroidWindowsAndroid StudioFlutter

Android Problem Overview


I'm trying to install flutter but it won't let me accept the android license. I get the following error:

PS C:\Users\XXXX> flutter doctor --android-licenses
Exception in thread "main" java.lang.NoClassDefFoundError: javax/xml/bind/annotation/XmlSchema
        at com.android.repository.api.SchemaModule$SchemaModuleVersion.<init>(SchemaModule.java:156)
        at com.android.repository.api.SchemaModule.<init>(SchemaModule.java:75)
        at com.android.sdklib.repository.AndroidSdkHandler.<clinit>(AndroidSdkHandler.java:81)
        at com.android.sdklib.tool.sdkmanager.SdkManagerCli.main(SdkManagerCli.java:73)
        at com.android.sdklib.tool.sdkmanager.SdkManagerCli.main(SdkManagerCli.java:48)
Caused by: java.lang.ClassNotFoundException: javax.xml.bind.annotation.XmlSchema
        at java.base/jdk.internal.loader.BuiltinClassLoader.loadClass(BuiltinClassLoader.java:602)
        at java.base/jdk.internal.loader.ClassLoaders$AppClassLoader.loadClass(ClassLoaders.java:178)
        at java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:522)
        ... 5 more

I've already uninstalled my current version of Java and clean installed Java 8 from here.

This is what flutter doctor returns:

[✓] Flutter (Channel stable, 1.22.3, on Microsoft Windows [Version 10.0.18363.1139], locale en-IE)
[!] Android toolchain - develop for Android devices (Android SDK version 30.0.2)
    ✗ Android license status unknown.
      Run `flutter doctor --android-licenses` to accept the SDK licenses.
      See https://flutter.dev/docs/get-started/install/windows#android-setup for more details.
[!] Android Studio (version 4.1.0)
    ✗ Flutter plugin not installed; this adds Flutter specific functionality.
    ✗ Dart plugin not installed; this adds Dart specific functionality.
[✓] VS Code (version 1.50.1)
[!] Connected device
    ! No devices available

Android Solutions


Solution 1 - Android

Installing Android SDK Command-line tools from Android SDK Manager did the job for me.

  1. Open Android Studio
  2. Tools > SDK Manager
  3. From the left choose, Appearance & Behavior > System Settings > Android SDK
  4. Select SDK Tools from the top menu
  5. Check Android SDK Command-line tools and click 'apply'.

enter image description here

Solution 2 - Android

Firstly check for your JAVA_HOME path under System Variables it should be like -->

C:\Program Files\Java\jdk-15.0.2
(no semi-colon and no \bin)

and add to path (in System Variables)--> %JAVA_HOME%\bin

if still, you are getting any error try this in Android Studio--> Setting(Appearance & Behavior) -> Android SDK -> check and download Android SDK Command-line tools.

restart terminal and try again with flutter doctor --android-licenses

--> this should do the work.

Solution 3 - Android

I got same problem.

Just install Android Studio, then problem gone.

Attributions

All content for this solution is sourced from the original question on Stackoverflow.

The content on this page is licensed under the Attribution-ShareAlike 4.0 International (CC BY-SA 4.0) license.

Content TypeOriginal AuthorOriginal Content on Stackoverflow
QuestionLittle BallView Question on Stackoverflow
Solution 1 - AndroidLittle BallView Answer on Stackoverflow
Solution 2 - AndroidAakashView Answer on Stackoverflow
Solution 3 - AndroidJohn WangView Answer on Stackoverflow