运行 android sdkmanager 结果 java.lang.ClassNotFoundException
Running android sdkmanager results in java.lang.ClassNotFoundException
我刚刚在 macOS
上安装了 Android Studio
。我需要接受许可证。我如何 运行 sdkmanager
?
$tools/bin/sdkmanager
APP_HOME=/Users/steve/Library/Android/sdk/tools
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:583)
at java.base/jdk.internal.loader.ClassLoaders$AppClassLoader.loadClass(ClassLoaders.java:178)
at java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:521)
请注意,我 运行宁 java11
其中 javax.xml.bind
不存在。
临时解决方法是我将 jdk
版本重置为 java8。然后 sdkmanager
能够 运行。有没有其他问题还有待观察。
安装java8,
打开 android 工作室 > 进入配置 > select sdk 管理器 > 进入 sdk 工具 > 在 android sdk 命令行工具上打勾 >申请 > 等待安装
输入命令
flutter doctor --android-licenses
- 并输入 y
接受所有许可
我刚刚在 macOS
上安装了 Android Studio
。我需要接受许可证。我如何 运行 sdkmanager
?
$tools/bin/sdkmanager
APP_HOME=/Users/steve/Library/Android/sdk/tools
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:583)
at java.base/jdk.internal.loader.ClassLoaders$AppClassLoader.loadClass(ClassLoaders.java:178)
at java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:521)
请注意,我 运行宁 java11
其中 javax.xml.bind
不存在。
临时解决方法是我将 jdk
版本重置为 java8。然后 sdkmanager
能够 运行。有没有其他问题还有待观察。
安装java8,
打开 android 工作室 > 进入配置 > select sdk 管理器 > 进入 sdk 工具 > 在 android sdk 命令行工具上打勾 >申请 > 等待安装
输入命令
flutter doctor --android-licenses
- 并输入 y 接受所有许可