【问题标题】:Accepting android licenses for Flutter not working接受 Flutter 的 android 许可证不起作用
【发布时间】:2020-11-30 10:56:43
【问题描述】:

我正在尝试安装 Flutter 以使用它的 Visual Studio Code。我安装了 Git、flutter SDK、设置 ENV 变量……但是当我运行 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:581)                              
at java.base/jdk.internal.loader.ClassLoaders$AppClassLoader.loadClass(ClassLoaders.java:178)                           
at java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:522)                                                      
... 5 more

我已经安装了 OpenJDK。如果您需要详细信息,这里是我的flutter doctor -v 输出:

[√] Flutter (Channel stable, 1.22.4, on Microsoft Windows [Version 10.0.19042.630], locale en-GB)                           
• Flutter version 1.22.4 at C:\Users\cleme\AppData\Local\flutter                                                        
• Framework revision 1aafb3a8b9 (2 weeks ago), 2020-11-13 09:59:28 -0800                                                
• Engine revision 2c956a31c0                                                                                            
• Dart version 2.10.4                                                                                                                                                                                                                       
[!] Android toolchain - develop for Android devices (Android SDK version 30.0.2)                                            
• Android SDK at C:\Users\cleme\AppData\Local\Android\sdk                                                               
• Platform android-30, build-tools 30.0.2                                                                               
• Java binary at: C:\Program Files\Android\Android Studio\jre\bin\java                                                  
• Java version OpenJDK Runtime Environment (build 1.8.0_242-release-1644-b01)                                           
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.                                                                                                                                                  
[!] Android Studio (version 4.1.0)                                                                                          
• Android Studio at C:\Program Files\Android\Android Studio                                                             
X Flutter plugin not installed; this adds Flutter specific functionality.                                               
X Dart plugin not installed; this adds Dart specific functionality.                                                     
• Java version OpenJDK Runtime Environment (build 1.8.0_242-release-1644-b01)                                                                                                                                                               
[!] Connected device                                                                                                        
! No devices available                                                                                                                                                                                                                      
! Doctor found issues in 3 categories.

【问题讨论】:

    标签: flutter


    【解决方案1】:

    好像你还没有安装 dart 插件。

    按照这个安装飞镖插件:

    启动 VS 代码。调用视图 > 命令面板。键入“安装”,然后选择扩展:安装扩展。在扩展搜索栏中输入“flutter”,在列表中选择 Flutter,然后点击安装。

    【讨论】:

    • 是的,但这不是问题,因为我无法对不接受的许可证做任何事情。但是我安装了颤振和飞镖扩展......正如预期的那样,它没有改变任何东西:运行颤振医生时我仍然得到同样的错误 --android-licenses
    【解决方案2】:

    安装 Java:

    sudo apt install openjdk-8-jdk openjdk-8-doc
    

    然后颤振医生 --android-licenses 工作正常:

    flutter doctor --android-licenses
    Warning: File /home/daniel/.android/repositories.cfg could not be loaded.       
    5 of 6 SDK package licenses not accepted. 100% Computing updates...             
    Review licenses that have not been accepted (y/N)?
    

    【讨论】:

      【解决方案3】:

      所以我弄清楚了这个错误来自哪里。我在我的 Windows 系统上安装了 OpenJDK 11 Hotspot,其中 JAVA_HOME 变量与其路径关联。删除 OpenJDK 并重新启动后一切正常,因为 Flutter 可以使用自己的 java 文件/目录...

      【讨论】:

        猜你喜欢
        • 2021-06-08
        • 2022-01-07
        • 2020-05-21
        • 2021-10-16
        • 2021-09-11
        • 1970-01-01
        • 2021-04-02
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多