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:581)
at java.base/jdk.internal.loader.ClassLoaders$AppClassLoader.loadClass(ClassLoaders.java:178)
at java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:521)
... 5 more
运行 flutter doctor –android-licenses 时出现上述错误。有谁知道为什么会这样以及我该如何解决?我已经在 flutter 控制台上运行它了。
原文由 Vivek Kogilathota 发布,翻译遵循 CC BY-SA 4.0 许可协议
从 Android SDK 管理器 安装 Android SDK 命令行工具 为我完成了这项工作。
步骤 #1 的替代方法:WINDOWS: 文件 > 设置(Ctrl+Alt+S) / MAC: Android Studio > 首选项
此修复适用于 Windows 、 Linux 和 Mac OS X。
如果您在执行上述步骤后仍遇到问题,可以尝试将系统升级到 JDK 8。可以 在此处 获得升级到 JDK 8 的官方文档。