安装 Flutter 和 Android Studio 后出现错误“cmdline-tools 组件丢失”...我添加了 Android SDK。我该如何解决它们?

Ash*_*faq 571 android android-studio flutter flutter-doctor

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.
Run Code Online (Sandbox Code Playgroud)

小智 1119

我的解决方案是打开 Android Studio 并转到SDK Manager,切换到SDK Tools选项卡并检查Android SDK Command-line Tools (latest)

在此输入图像描述

不要忘记将 SDK 内的工具和平台工具文件夹添加到您的 PATH 中。

  • 兄弟,flutter应该把你答案的链接放在他们的flutter doctor中 (54认同)
  • @Felipe-carvalho 我该如何``不要忘记将 Sdk 中的工具和平台工具文件夹添加到你的 PATH 中``? (13认同)
  • 在 Mac OS 上:Monterey,选择并应用后:“Android SDK 命令行工具(最新)”。SDK 组件安装程序安装工具时无需添加 PATH (12认同)
  • 只有在我向 Ubuntu 安装 ~/.profile 文件中添加了一堆文件夹后,它才对我有用:`export PATH=$PATH:$HOME/Android/Sdk/platform-tools export PATH=$PATH:$HOME/Android/ Sdk/cmdline-tools/latest/bin/ 导出 PATH=$PATH:$HOME/Android/Sdk/build-tools/32.1.0-rc1/ 导出 PATH=$PATH:$HOME/Android/Sdk/emulator/bin64/ ` (10认同)
  • 我爱你...我快要失去理智了 (3认同)
  • C:\Users\<user>\AppData\Local\Android\Sdk\tools\bin 也可以在“Android SDK Location”输入框中检查外观和行为 > 系统设置 > Android SDK,甚至编辑该值; ) (2认同)

Nor*_*man 202

由于我的 Android Studio 启动屏幕看起来与上面的答案不同,我想分享我的解决方案:

“欢迎使用 Android Studio”屏幕的图像。 箭头突出显示此屏幕底部的“更多操作”下拉菜单,第二个箭头突出显示下拉菜单中的“SDK 管理器”选项。

  • 打开 Android Studio 并单击欢迎屏幕上的“更多操作”。

  • 单击“ SDK 管理器

    Android Studio 中“首选项”窗口的图像。 在左侧选择“Android SDK”,然后在此设置页面上,从顶部栏菜单中选择“SK Tools”。选中名为“Android SDK Command-line Tools(最新)”的项目,并应用更改。

  • 在“首选项”窗口中,转到“ SDK 工具”选项卡

  • 选择“ Android SDK 命令行工具(最新) ”复选框。

  • 点击Apply

  • 这解决了这个问题。值得一提的是,最后一步是:`flutter doctor --android-licenses` (10认同)

小智 141

Windows 上的 Android SDK 管理器屏幕截图

在此输入图像描述

请参阅随附的屏幕截图,了解如何从 SDK Manager 安装工具。


inf*_*sud 125

    \n
  1. 从 Android Studio 打开 SDK 管理器。

    \n
  2. \n
  3. 您可以从菜单栏 \xe2\x86\x92 Tools \xe2\x86\x92 SDK Manager 找到 SDK 管理器或使用 图标。如图所示。

    \n

    在此输入图像描述

    \n
  4. \n
  5. SDK 工具选项卡

    \n
  6. \n
  7. 检查Android SDK Command Line Tools如图所示

    \n
  8. \n
  9. Apply

    \n

    在此输入图像描述

    \n
  10. \n
  11. 然后再次在终端中运行。 flutter doctor

    \n
  12. \n
\n


jqg*_*imo 62

我的解决过程如下:

\n
    \n
  1. ~/Library/Android/sdk/tools/bin/sdkmanager --install "cmdline-tools;latest"

    \n
    Exception in thread "main" java.lang.NoClassDefFoundError: javax/xml/bind/annotation/XmlSchema\n    at com.android.repository.api.SchemaModule$SchemaModuleVersion.<init>(SchemaModule.java:156)\n    at com.android.repository.api.SchemaModule.<init>(SchemaModule.java:75)\n    at com.android.sdklib.repository.AndroidSdkHandler.<clinit>(AndroidSdkHandler.java:81)\n    at com.android.sdklib.tool.sdkmanager.SdkManagerCli.main(SdkManagerCli.java:73)\n    at com.android.sdklib.tool.sdkmanager.SdkManagerCli.main(SdkManagerCli.java:48)\nCaused by: java.lang.ClassNotFoundException: javax.xml.bind.annotation.XmlSchema\n    at java.base/jdk.internal.loader.BuiltinClassLoader.loadClass(BuiltinClassLoader.java:636)\n    at java.base/jdk.internal.loader.ClassLoaders$AppClassLoader.loadClass(ClassLoaders.java:182)\n    at java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:519)\n    ... 5 more\n
    Run Code Online (Sandbox Code Playgroud)\n
  2. \n
  3. 在 Android Studio 中安装 Android SDK 命令行工具:

    \n

    首选项\xe2\x86\x92外观和行为\xe2\x86\x92系统设置\xe2\x86\x92 Android SDK \xe2\x86\x92 SDK 工具\xe2\x86\x92 Android SDK 命令行工具(最新)

    \n
  4. \n
  5. flutter doctor

    \n
    Doctor summary (to see all details, run flutter doctor -v):\n[\xe2\x9c\x93] Flutter (Channel stable, 2.5.0, on macOS 11.5.2 20G95 darwin-x64, locale zh-Hans-CN)\n[\xe2\x9c\x93] Android toolchain - develop for Android devices (Android SDK version 29.0.3)\n[\xe2\x9c\x93] Xcode - develop for iOS and macOS\n[\xe2\x9c\x93] Chrome - develop for the web\n[\xe2\x9c\x93] Android Studio (version 2020.3)\n[\xe2\x9c\x93] IntelliJ IDEA Ultimate Edition (version 2021.2)\n[\xe2\x9c\x93] IntelliJ IDEA Ultimate Edition (version 2021.2)\n[\xe2\x9c\x93] Connected device (2 available)\n\n\xe2\x80\xa2 No issues found!\n
    Run Code Online (Sandbox Code Playgroud)\n
  6. \n
\n

  • 除了这些操作之外,我还必须在“flutter doctor --android-licenses”上执行此命令才能接受所有 Android 许可证 (3认同)

小智 49

对于 Windows 用户

如果您在构建工具、工具已安装并添加到路径变量后仍然看到相同的错误user/system,则可能sdkmanager确实找不到您的位置

  • 只需输入
flutter config --android-sdk "C:\Users\{Your_User_Name}\AppData\Local\Android\Sdk" # (Default SDK location)
Run Code Online (Sandbox Code Playgroud)
  • 将里面的路径添加""到你的Android SDK文件夹所在的位置

  • 然后您可以运行许可证来验证任何未批准的许可证。

这对我有用。

  • 非常有帮助!由于存储空间不足,我不得不将 sdk 文件夹移至 D 盘,这就是为什么即使在安装工具并设置路径后问题仍然存在!您的解决方案节省了我很多时间! (7认同)

Sha*_*tim 30

您的 Android SDK 版本需要更新。

\n

打开 Android Studio \xe2\x86\x92 单击顶栏上的Android Studio \xe2\x86\x92 首选项\xe2\x86\x92外观和行为(单击以打开下拉列表) \xe2\x86\x92系统设置(单击以打开下拉菜单)\xe2\x86\x92 Android SDK \xe2\x86\x92 SDK 工具(选项卡)。

\n

检查Android SDK 命令行工具(最新) \xe2\x86\x92应用\xe2\x86\x92 单击OK。更新完成后,运行flutter doctor.

\n

“外观和行为”菜单的屏幕截图

\n


reg*_*ngi 26

如果flutter doctor说的是这样的话:

\n
[!] Android toolchain - develop for Android devices (Android SDK version 30.0.2)\n\xe2\x80\xa2 Android SDK at /Users/<admin>/Library/Android/sdk\n\xe2\x9c\x97 cmdline-tools component is missing\n  Run `path/to/sdkmanager --install "cmdline-tools;latest"`\n
Run Code Online (Sandbox Code Playgroud)\n

对我来说path/to/sdkmanager是:

\n
/Users/<user>/Library/Android/sdk/tools/bin/sdkmanager\n
Run Code Online (Sandbox Code Playgroud)\n

所以对我来说解决整个问题的是运行:

\n
/Users/<user>/Library/Android/sdk/tools/bin/sdkmanager --install "cmdline-tools;latest"\n
Run Code Online (Sandbox Code Playgroud)\n

  • 对我有用的是运行: flutter config --android-studio-dir="" 和 flutter config --android-sdk="" (4认同)

Ene*_*man 25

对于 macOS,我运行了这个命令;

cd ~/Library/Android/sdk/tools/bin
./sdkmanager --install "cmdline-tools;latest"
Run Code Online (Sandbox Code Playgroud)

然后当我flutter doctor再次运行该命令时,确认问题已解决。


Md.*_*sen 16

在此输入图像描述

最简单的解决方案:

  • 打开Android Studio,点击Android studio左上角的设置。
  • 在搜索框中搜索“SDK工具”。
  • 从 SDK 工具中只需检查Android SDK Platform Tools
  • 运行flutter doctor验证一下。如果需要,您还可以重新启动 Android Studio。
    我希望问题能够得到解决。


Kal*_*glu 15

对于 macOS 用户:

flutter config --android-sdk "/Users/{YOUR_USER_NAME}/Library/Android/sdk"
Run Code Online (Sandbox Code Playgroud)

然后

flutter doctor --android-licenses
Run Code Online (Sandbox Code Playgroud)

键入“y”表示所有停靠点。


小智 10

我通过以下操作在 Windows\xc2\xa010 上解决了这个问题:

\n
    \n
  1. 在 Windows 命令提示符或 Flutter 控制台中运行以下命令:

    \n
    flutter config --android-sdk "C:\\Users\\\'your computer name\' AppData\\Local\\Android\\Sdk"\n
    Run Code Online (Sandbox Code Playgroud)\n

    (可能需要找到并输入自己的SDK路径)

    \n

    Android SDK 位置可以在 Android Studio 应用程序中找到* \xe2\x86\x92外观和行为\xe2\x86\x92系统设置\xe2\x86\x92 Android SDK

    \n
  2. \n
  3. 打开 Android Studio,然后 \xe2\x86\x92文件\xe2\x86\x92设置\xe2\x86\x92外观和行为\xe2\x86\x92系统设置\xe2\x86\x92 Android SDK \xe2\x86 \x92 SDK Tools \xe2\x86\x92 下载 Android SDK 命令行工具(最新),然后就可以开始了。

    \n
  4. \n
\n


Mst*_*dav 10

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

flutter config --android-sdk=""
Run Code Online (Sandbox Code Playgroud)


小智 5

如果您是 Mac 用户,只需打开终端并粘贴:

cd Library/Android/sdk/tools/bin./sdkmanager --install "cmdline-tools;latest"
Run Code Online (Sandbox Code Playgroud)

并击中Enter

此命令将安装最新版本的cmdline-tools

然后运行flutter doctor,错误就消失了。


小智 5

对于 Linux(Ubuntu

只需在终端中复制此命令并将“您的用户名”更改为您的用户名(不带空格):

/home/your user name/Android/Sdk/tools/bin/sdkmanager --install "cmdline-tools;latest"
Run Code Online (Sandbox Code Playgroud)


sid*_*mar 5

我从Android Studio安装了Android SDK平台工具。这帮助我解决了这个错误。

安装前出错

从 Android Studio 安装的平台工具

安装平台工具后

  • [回答问题时请勿上传代码/错误的图片。](//meta.stackoverflow.com/q/285551) (3认同)