Flutter Doctor:运行“flutter doctor --android-licenses”时出错

gag*_*ag0 2 flutter flutter-doctor android-licenses

当我尝试运行“flutter doctor --android-licenses”时出现此错误,但我不明白为什么。

\n
Error: A JNI error has occurred, please check your installation and try again\nException in thread "main" java.lang.UnsupportedClassVersionError: com/android/prefs/AndroidLocationsProvider has been compiled by a more recent version of the Java R\nuntime (class file version 55.0), this version of the Java Runtime only recognizes class file versions up to 52.0\nat java.lang.ClassLoader.defineClass1(Native Method)\nat java.lang.ClassLoader.defineClass(ClassLoader.java:756)\nat java.security.SecureClassLoader.defineClass(SecureClassLoader.java:142)\nat java.net.URLClassLoader.defineClass(URLClassLoader.java:468)\nat java.net.URLClassLoader.access$100(URLClassLoader.java:74)\nat java.net.URLClassLoader$1.run(URLClassLoader.java:369)\nat java.net.URLClassLoader$1.run(URLClassLoader.java:363)\nat java.security.AccessController.doPrivileged(Native Method)\nat java.net.URLClassLoader.findClass(URLClassLoader.java:362)\nat java.lang.ClassLoader.loadClass(ClassLoader.java:418)\nat sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:355)\nat java.lang.ClassLoader.loadClass(ClassLoader.java:351)\nat java.lang.Class.getDeclaredMethods0(Native Method)\nat java.lang.Class.privateGetDeclaredMethods(Class.java:2701)\nat java.lang.Class.privateGetMethodRecursive(Class.java:3048)\nat java.lang.Class.getMethod0(Class.java:3018)\nat java.lang.Class.getMethod(Class.java:1784)\nat sun.launcher.LauncherHelper.validateMainClass(LauncherHelper.java:650)\nat sun.launcher.LauncherHelper.checkAndLoadMain(LauncherHelper.java:632)\nAndroid sdkmanager tool was found, but failed to run (C:\\\\Users\\\\Gago\\\\AppData\\\\Local\\\\Android\\\\sdk\\\\cmdline-tools\\\\latest\\\\bin\\\\sdkmanager.bat): "exited code 1".\nTry re-installing or updating your Android SDK,\nvisit https://flutter.dev/docs/get-started/install/windows#android-setup for detailed instructions.\n
Run Code Online (Sandbox Code Playgroud)\n

这是我的扑动医生:

\n
Doctor summary (to see all details, run flutter doctor -v):\n\\[\xe2\x88\x9a\\] Flutter (Channel stable, 3.7.7, on Microsoft Windows \\[Version 10.0.19044.2604\\], locale de-DE)\n\\[X\\] Windows Version (Unable to confirm if installed Windows version is 10 or greater)\n\\[!\\] Android toolchain - develop for Android devices (Android SDK version 33.0.2)\nX Android license status unknown.\nRun `flutter doctor --android-licenses` to accept the SDK licenses.\nSee https://flutter.dev/docs/get-started/install/windows#android-setup for more details.\n\\[\xe2\x88\x9a\\] Chrome - develop for the web\n\\[\xe2\x88\x9a\\] Android Studio (version 2022.1)\n\\[\xe2\x88\x9a\\] IntelliJ IDEA Community Edition (version 2021.2)\n\\[\xe2\x88\x9a\\] IntelliJ IDEA Ultimate Edition (version 2022.2)\n\\[\xe2\x88\x9a\\] VS Code (version 1.75.1)\n\\[\xe2\x88\x9a\\] Connected device (2 available)\n\\[\xe2\x88\x9a\\] HTTP Host Availability\n\n! Doctor found issues in 2 categories.\n
Run Code Online (Sandbox Code Playgroud)\n

任何帮助表示赞赏!

\n

我已经尝试卸载 Android Sdk 命令行工具并重新安装它,但没有帮助。\n我使用的是 Android Studio,我的 jdk 是 JDK 1.8.0_301。

\n

gag*_*ag0 8

我解决了这个问题。对我有用的是:

\n
    \n
  1. 取消选中 Android SDK 命令行工具(最新)
  2. \n
  3. 检查Android SDK命令行工具8.0
  4. \n
  5. 单击“应用”
  6. \n
  7. 在 Windows 中,转到 \xe2\x80\x9cC:\\Users\\USERNAME\\AppData\\Local\\Android\\Sdk\\cmdline-tools\xe2\x80\x9d 并将 8.0 文件夹重命名为 \xe2\ x80\x9clatest\xe2\x80\x9d
  8. \n
  9. 再次运行 Flutter doctor。
  10. \n
\n

这是@thurakhant 在 github 上的解决方案。谢谢你!

\n