flutter doctor –android-licenses gives a java error


When you run flutter doctor and you might end up with below error:

C:\Users\pokur>flutter doctor
Doctor summary (to see all details, run flutter doctor -v):
[√] Flutter (Channel stable, 2.2.3, on Microsoft Windows [Version 10.0.19042.1110], locale en-US)
[!] Android toolchain - develop for Android devices (Android SDK version 31.0.0)
X 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.
[√] Chrome - develop for the web
[!] Android Studio (not installed)
[√] VS Code (version 1.58.2)
[√] Connected device (2 available)

As suggested from above, when you try to run the command “flutter doctor –android-licenses” then you will get below error

Exception in thread "main" java.lang.NoClassDefFoundError: javax/xml/bind/annotation/XmlSchema
        at com.android.repository.api.SchemaModule$SchemaModuleVersion.(SchemaModule.java:156)
        at com.android.repository.api.SchemaModule.(SchemaModule.java:75)
        at com.android.sdklib.repository.AndroidSdkHandler.(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:581)
        at java.base/jdk.internal.loader.ClassLoaders$AppClassLoader.loadClass(ClassLoaders.java:178)
        at java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:521)

Solution: As show in Image and follow the steps to fix

  1. Navigate Android Studio -> Tools -> SDK Manager
  2. Tools > SDK Manager
  3. Select Android SDK from  Appearance & Behavior > System Settings > Android SDK
  4. Select SDK Tools and check  Android SDK Command-line tools and click ‘apply’.
  5. After Applying, it will download the components and restart the Android Studio
  6. Now run the command from Flutter. Hope this helps!!!
2 thoughts on “flutter doctor –android-licenses gives a java error”

Comments are closed.