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 工具链 - 我为 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.
我的解决过程如下:
~/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
在 Android Studio 中安装 Android SDK 命令行工具:
首选项→外观和行为→系统设置→ Android SDK → SDK 工具→ Android SDK 命令行工具(最新)
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!
如果flutter doctor
说的是这样的:
[!] Android toolchain - develop for Android devices (Android SDK version 30.0.2)
• Android SDK at /Users/<admin>/Library/Android/sdk
✗ cmdline-tools component is missing
Run `path/to/sdkmanager --install "cmdline-tools;latest"`
对path/to/sdkmanager
我来说是:
/Users/<user>/Library/Android/sdk/tools/bin/sdkmanager
所以为我解决了整个问题的是运行:
/Users/<user>/Library/Android/sdk/tools/bin/sdkmanager --install "cmdline-tools;latest"
对于 macOS,我运行了这个命令;
cd ~/Library/Android/sdk/tools/bin
./sdkmanager --install "cmdline-tools;latest"
然后当我再次运行该flutter doctor
命令时,它确认问题已解决。
如果在构建工具、工具安装并添加到user/system
路径变量后仍然看到相同的错误,则可能sdkmanager
真的找不到您的位置
尝试这个
只需输入
flutter config --android-sdk "C:\Users\barma\AppData\Local\Android\Sdk" (since my SDK folder is here)
将路径添加""
到您的 Android SDK 文件夹所在的位置
然后,您可以运行许可证来验证任何未批准的许可证。
这对我有用。
如果您是 Mac 用户,只需打开终端并粘贴:
cd Library/Android/sdk/tools/bin./sdkmanager --install "cmdline-tools;latest"
并击中Enter。
此命令将安装最新版本的cmdline-tools。
然后,运行flutter doctor
,错误就会消失。
我通过以下操作在 Windows 10 上解决了这个问题:
在 Windows 命令提示符或 Flutter 控制台中运行以下命令:
flutter config --android-sdk "C:\Users\'your computer name' AppData\Local\Android\Sdk"
(您可能需要找到并输入您自己的 SDK 路径)
Android SDK 位置可以在 Android Studio 应用程序* →外观和行为→系统设置→ Android SDK中找到
打开您的 Android Studio,然后 →文件→设置→外观和行为→系统设置→ Android SDK → SDK 工具→ 下载 Android SDK 命令行工具(最新),一切顺利。
对于 Linux ( Ubuntu )
只需在您的终端中复制此命令,然后将“您的用户名”更改为您的用户名,不带空格:
/home/your user name/Android/Sdk/tools/bin/sdkmanager --install "cmdline-tools;latest"
您必须安装Android SDK Command-line Tools。为此,请调用菜单命令File → Settings → Android SDK并下载最新版本。
您必须在“设置”窗口的左侧选择Android SDK 。它在Appearance & Behavior → System Settings下。
如果您已经从 Android Studio 安装了最新的 cmd-line 工具,但仍然报错,那么您应该执行以下操作。
如果您已将 Android SDK 安装到自定义目录,则需要复制 SDK 文件夹的路径。然后你必须去编辑环境变量,点击New给变量名:ANDROID_SDK_ROOT。还有一个变量值:你的 SDK 文件夹的路径。单击OK。
在旧版本的 Flutter 中,解决方案(创建 ANDROID_SDK_ROOT)会出现此错误,但在新版本中并没有显示。
如果您已经下载了 cmdline-tools 和 Android Sdk,请确保颤振没有在错误的目录中查找
flutter config --android-sdk=""