簡體   English   中英

Flutter 醫生找不到 sdkmanager

[英]Flutter doctor can't find sdkmanager

因此,我嘗試在沒有 Android Studio 的情況下安裝顫振,因為每當我嘗試打開 Android Studio 時,我的 PC 工作速度都非常慢。 一開始一切都很順利,但是當顫抖試圖獲得Android許可證時

flutter doctor --android-licenses

它總是給我

C:\Windows\System32>flutter doctor --android-licenses
Android sdkmanager not found. Update to the latest Android SDK and ensure that the cmdline-tools are installed to
resolve this.

當我檢查使用

flutter doctor --android-licenses -v

它給了我

C:\Windows\System32>flutter doctor --android-licenses -v
Android sdkmanager not found. Update to the latest Android SDK and ensure that the cmdline-tools are installed to
resolve this.

#0      throwToolExit (package:flutter_tools/src/base/common.dart:10:3)
#1      AndroidLicenseValidator.runLicenseManager (package:flutter_tools/src/android/android_workflow.dart:422:7)
#2      Doctor.diagnose (package:flutter_tools/src/doctor.dart:295:38)
#3      DoctorCommand.runCommand (package:flutter_tools/src/commands/doctor.dart:50:47)
#4      FlutterCommand.verifyThenRunCommand (package:flutter_tools/src/runner/flutter_command.dart:1274:12)
<asynchronous suspension>
#5      FlutterCommand.run.<anonymous closure> (package:flutter_tools/src/runner/flutter_command.dart:1125:27)
<asynchronous suspension>
#6      AppContext.run.<anonymous closure> (package:flutter_tools/src/base/context.dart:150:19)
<asynchronous suspension>
#7      CommandRunner.runCommand (package:args/command_runner.dart:209:13)
<asynchronous suspension>
#8      FlutterCommandRunner.runCommand.<anonymous closure>
(package:flutter_tools/src/runner/flutter_command_runner.dart:288:9)
<asynchronous suspension>
#9      AppContext.run.<anonymous closure> (package:flutter_tools/src/base/context.dart:150:19)
<asynchronous suspension>
#10     FlutterCommandRunner.runCommand (package:flutter_tools/src/runner/flutter_command_runner.dart:236:5)
<asynchronous suspension>
#11     run.<anonymous closure>.<anonymous closure> (package:flutter_tools/runner.dart:62:9)
<asynchronous suspension>
#12     AppContext.run.<anonymous closure> (package:flutter_tools/src/base/context.dart:150:19)
<asynchronous suspension>
#13     main (package:flutter_tools/executable.dart:92:3)
<asynchronous suspension>

我的 PATH 有什么問題或者我需要先做些什么嗎? 如果可以幫助我,我將包括我的路徑。 在此處輸入圖像描述

在此處輸入圖像描述

謝謝你。

看起來您可能缺少命令行工具。

如果您想在不安裝 Android Studio 的情況下安裝命令行工具,那么我建議您在此處查看此網站。 它列出了您無需安裝 android studio 即可下載的所有 android sdk 工具。

如果您確實想安裝 android studio,我最近可以通過轉到工具>SDK 管理器>SDK 工具並選擇“Android SDK 命令行工具(最新)”來解決這個問題,然后點擊確定安裝工具。

在你這樣做之后,再次嘗試做flutter doctor --android-licenses

* N\B:我相信默認情況下您已經安裝了命令行工具。 轉到包含 sdkmanager.bat 文件的文件夾,然后從那里打開 cmd。 cmd 應該顯示它打開的文件夾。 運行以下命令, 'sdkmanager.bat --install "cmdline-tools;latest"完全運行任務后關閉 cmd 並打開一個新的並運行 'flutter doctor'

此錯誤可以從 android studio 解決,轉到 SDK 工具,然后單擊 android SDK 命令行工具並安裝它們。

我遇到了兩個問題。 我從默認安裝的 Android Studio 和 flatpack 開始。

  1. 當您從 Google 下載commandlinetools...zip並將其解壓縮時,您會得到cmdline-tools/bincmdline-tools/lib等目錄。這不起作用。 您需要創建一個latest的子目錄並將所有內容移到那里。 例如/home/user/Android/Sdk/cmdline-tools/latest/bin/
  2. 現在您可以運行更新程序了。 可行的東西看起來像~/Android/Sdk/cmdline-tools/latest/bin/sdkmanager --sdk_root=/home/user/Android/Sdk --install "cmdline-tools;latest" 當我第一次安裝時,我安裝了~/而不是/home/user/ ,這會導致更新后出現問題。 您提供給--sdk_root的值會緩存在某處。

現在您可以成功運行flutter doctor以接受許可證。

在 Windows 上,您可能還需要設置 android-sdk 位置。 它通常位於C:\$USER\AppData\Local\Android\Sdk中。

您可以通過運行flutter config --android-sdk <path to android sdk>來設置它。

這為我解決了同樣的問題。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM