[英]Flutter doctor results with "cmdline-tools component is missing"
在 Windows 10 上安装 Android Studio & Flutter 后,当我运行flutter doctor
时,我得到以下信息:
[√] Flutter (Channel stable, 2.5.0, on Microsoft Windows [Version 10.0.19043.1202], locale en-US)
[X] Android toolchain - develop for Android devices
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.
[√] Chrome - develop for the web
[√] Android Studio (version 2020.3)
[√] VS Code (version 1.60.0)
[√] Connected device (2 available)
打开Android Studio > SDK Manager > Android SDK > SDK Tools
卸载Android SDK Command-line Tools (latest)
我还在用户 PATH 环境变量中添加了<pathToSDK>\tools\bin
、 <pathToSDK>\platform-tools\
和<pathToSDK>\cmdline-tools\latest\bin
。
按照 flutter 说明运行<pathToSDKManager> --install "cmdline-tools;latest"
(对我来说位于<pathToSDK>\cmdline-tools\latest\bin
)结果为:
ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH.
Please set the JAVA_HOME variable in your environment to match the
location of your Java installation.
除了我需要在 Java 上安装某个版本并将其添加到我的路径之外,我还没有找到关于此的任何文档。 https://flutter.dev/docs/get-started/install/windows页面提到“确保您安装了 Java 8 版本并且您的 JAVA_HOME 环境变量设置为 JDK 的文件夹。” 然后声明“Android Studio 2.2 及更高版本带有 JDK,所以这应该已经完成了。” 但没有进一步阐述。
打开 Android Studio 并转到File > Project Structure > Project > Project SDK
我可以看到 Android Studio 已经安装了 Java 的几个版本:
您可以按照以下步骤操作,以确保您的 Flutter 项目正常工作:您的 SDK 管理器应如下所示:
Preferences
> Appearance & Behavior
> System Settings
> Android SDK
> SDK Tools
>
安装这3个工具:
Android SDK Command-line Tools (latest)
Android SDK Build Tools 31
Android SDK Platform tools (latest version 31)
并确保每个工具都必须是相同的最新版本,以避免出现任何错误,因为以后可能会有新的更新。
flutter doctor --android-licenses
如果上述任何事情都没有解决,请确保您在 Windows 的系统设置中的环境变量中设置了正确的 JDK/JRE 位置:
在系统环境路径变量中为用户变量和系统变量添加以下路径:
C:\\Program Files\\Java\\jdkXXXXX\\bin
这里 XXX 是你的版本,这应该添加到你的系统变量和用户中
C:\\Users\\Neha\\AppData\\Local\\Android\\Sdk\\tools C:\\Users\\Neha\\AppData\\Local\\Android\\Sdk\\build-tools C:\\Users\\Neha\\AppData\\Local\\Android\\Sdk\\platform -工具
以上三个路径应该添加到您的用户变量路径中,检查下面附上的两个屏幕截图以获得正确的路径设置。 我也添加了 android studio 的工具路径,就像我在屏幕截图中所做的那样。
这是用于用户变量路径:
这是系统变量路径:
按照来源了解有关设置 java 路径的更多信息:
您必须在 PC 上手动安装 Java,但安装 JRE(Java 运行时环境)而不是 JDK(Java 开发工具包)。 JRE 包含了 Flutter 所需的一切。
我认为 AS 附带的是 JDK 而不是 JRE
在您显示的屏幕中,只需使用“Android Studio 默认 JDK”(或任何其他 JDK 11)。
Settings > Build, Execution, Deployment > Build Tools > Gradle > Gradle JDK.
您还需要设置与JAVA_HOME
环境变量以及ANDROID_HOME
相同的路径。 在 Windows 中,这些可以添加到Settings
> Advanced System Settings
> Environmental Variables
。 Flutter 需要设置这些来查找 CLI 工具……问题可能不是CLI 工具本身,而是它根本不知道 Java SDK 或 Android SDK。
如果你在没有 Android Studio 的情况下安装 Flutter。 在您的 sdkmanager.bat 文件所在的 Android\/bin 文件夹目录中运行此命令。 就我而言,它是
C:\\Android\\bin><\/code> 。
键入此命令
sdkmanager.bat --install "cmdline-tools;latest --sdk_root=../
如果你已经安装了 Flutter 而没有 Android Studio。 在包含 sdkmanager.bat 文件的 Android/bin 文件夹目录中运行此命令。 在我的例子中是 C:\Android\bin>
sdkmanager.bat "cmdline-tools;latest" --sdk_root=../
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.