Android工具链-我为Android设备开发(Android SDK版本30.0.3):

X cmdline-tools component is missing
  Run `path/to/sdkmanager --install "cmdline-tools;latest"`
  See https://developer.android.com/studio/command-line for more details.

当前回答

您的Android SDK版本需要更新。

打开Android Studio→点击顶部栏的Android Studio→首选项→外观&行为(点击打开下拉菜单)→系统设置(点击打开下拉菜单)→Android SDK→SDK工具(选项卡)。

检查Android SDK命令行工具(最新)→应用→单击确定。更新完成后,运行flutter doctor。

外观和行为菜单的截图

其他回答

适用于Linux (Ubuntu)

在你的终端复制这个命令,然后用你的用户名(不带空格)修改“你的用户名”:

/home/your user name/Android/Sdk/tools/bin/sdkmanager --install "cmdline-tools;latest"

我的解决过程如下:

~/Library/Android/sdk/tools/bin/sdkmanager --install "cmdline-tools;latest" 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:636) at java.base/jdk.internal.loader.ClassLoaders$AppClassLoader.loadClass(ClassLoaders.java:182) at java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:519) ... 5 more Install Android SDK Command-line Tools in Android Studio: Preferences → Appearance & Behavior → System Settings → Android SDK → SDK Tools → Android SDK Command-line Tools (latest) flutter doctor Doctor summary (to see all details, run flutter doctor -v): [✓] Flutter (Channel stable, 2.5.0, on macOS 11.5.2 20G95 darwin-x64, locale zh-Hans-CN) [✓] Android toolchain - develop for Android devices (Android SDK version 29.0.3) [✓] Xcode - develop for iOS and macOS [✓] Chrome - develop for the web [✓] Android Studio (version 2020.3) [✓] IntelliJ IDEA Ultimate Edition (version 2021.2) [✓] IntelliJ IDEA Ultimate Edition (version 2021.2) [✓] Connected device (2 available) • No issues found!

如果您已经下载了cmdline-tools和Android SDK,请确保Flutter没有在错误的目录中查找:

flutter config --android-sdk=""

对我来说,运行这个命令效果很好:

flutter config --android-sdk /path/to/your/sdk

如果您已经从Android Studio安装了最新的cmd行工具,但它仍然给出错误,那么您应该执行以下操作。

如果你已经将Android SDK安装到一个自定义目录,那么你需要复制SDK文件夹的路径。然后你要去编辑环境变量,点击New give 一个变量名ANDROID_SDK_ROOT。还有一个变量值:SDK文件夹的路径。 单击OK。

在较旧版本的Flutter中,此错误随解决方案一起出现(创建ANDROID_SDK_ROOT),但在新版本中它没有显示这一点。