Flutter Doctor --android-licenses 问题
Posted
技术标签:
【中文标题】Flutter Doctor --android-licenses 问题【英文标题】:Flutter doctor --android-licenses problem 【发布时间】:2021-01-19 15:00:19 【问题描述】:希望你们做得好。 我试图在颤振控制台中运行这个命令:
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:521)
... 5 more
我搜索了很多,但我没有找到解决方案。 有人可以帮帮我吗?
【问题讨论】:
【参考方案1】:我实际上找到了一半的解决方案。 我打开了 sdkmanager 然后改了这一行:
set DEFAULT_JVM_OPTS="-Dcom.android.sdklib.toolsdir=%~dp0.."
到这里:
set DEFAULT_JVM_OPTS="-Dcom.android.sdklib.toolsdir=%~dp0.." -XX:+IgnoreUnrecognizedVMOptions --add-modules java.se.ee
我也将 Execute sdkmanager 更改为:
"%JAVA_EXE%" %DEFAULT_JVM_OPTS% -XX:+IgnoreUnrecognizedVMOptions --add-modules java.se.ee %JAVA_OPTS% %SDKMANAGER_OPTS% -classpath "%CLASSPATH%" com.android.sdklib.tool.sdkmanager.SdkManagerCli %CMD_LINE_ARGS%
但它仍然无法正常工作。 这是错误:
Error occurred during initialization of boot layer
java.lang.module.FindException: Module java.se.ee not found
【讨论】:
【参考方案2】:你需要安装Android SDK Command-line tools
,注意你需要确保你也安装了JavaJDK。
【讨论】:
以上是关于Flutter Doctor --android-licenses 问题的主要内容,如果未能解决你的问题,请参考以下文章
运行 Flutter Doctor 时出现 Flutter android 许可错误
FLUTTER DOCTOR [X] Android 工具链
运行 flutter doctor --android-licenses 时发生异常
Flutter Doctor(不正确?)报告未安装 Android Studio Flutter 插件