Zestaw Dart SDK nie jest skonfigurowany

139

Zainstalowałem Fluttera i skonfigurowałem Android Studio. Następnie sklonowałem przykład fluttera na GitHubie ( https://github.com/flutter/flutter ) i uruchomiłem go w Android Studio, ale ostrzega mnie „Dart SDK nie jest skonfigurowany”, tak też stało się z moim współpracownikiem . Ale jeśli utworzę nowy projekt w Android Studio, nie ma żadnego problemu.

Co zrobiłem:

  1. Zainstalowany Flutter

  2. Zainstalowano Android Studio wraz z wtyczką Flutter, w tym wtyczką Dart

  3. Flutter uruchomiony w linii poleceń działa dobrze, wszystkie pięć testów przeszło pomyślnie. (Patrz poniżej)

[✓] Flutter (w systemie Mac OS X 10.13.3 17D47, locale en-US, channel dev) • Flutter wersja 0.0.22 at / Users / katelyn / flutter • Wersja Framework 3001b3307d (7 dni temu), 30.01.2018 11:37:15 -0800 • Wersja silnika 8f2d72b183 • Narzędzia Wersja Dart 2.0.0-dev.16.0 • Wersja Engine Dart 2.0.0-edge.7af4db0ea091dddca6b2da851e6dda8d7f9467e8

[✓] Android toolchain - programowanie dla urządzeń z systemem Android (Android SDK 27.0.3) • Android SDK w / Users / katelyn / Library / Android / sdk • Android NDK nie jest skonfigurowany (opcjonalnie; przydatne do obsługi natywnego profilowania) • Platforma android- 27, build-tools 27.0.3 • Pliki binarne Java pod adresem: / Applications / Android Studio.app/Contents/jre/jdk/Contents/Home/bin/java • Wersja Java OpenJDK Runtime Environment (build 1.8.0_152-release-915- b08)

[✓] iOS toolchain - programowanie dla urządzeń iOS (Xcode 9.2) • Xcode w /Applications/Xcode.app/Contents/Developer • Xcode 9.2, kompilacja w wersji 9C40b • ios-deploy 1.9.2 • CocoaPods w wersji 1.4.0

[✓] Android Studio (wersja 3.0) • Android Studio pod adresem / Applications / Android Studio.app/Contents • Wersja Java OpenJDK Runtime Environment (kompilacja 1.8.0_152-release-915-b08)

[✓] Połączone urządzenia • Android SDK zbudowany dla x86 • emulator-5554 • Android-x86 • Android 7.1.1 (API 25) (emulator)

W zeszłym tygodniu mogę uruchomić ich przykład za pomocą wiersza poleceń (w tym katalogu),

flutter run 

ale teraz pokazuje kilka błędów z Gradle.

Uruchamiam lib / main.dart w Android SDK zbudowanym dla x86 w trybie debugowania ... Inicjowanie gradle ... 0,7 s Rozwiązywanie zależności ...
* Błąd podczas uruchamiania Gradle: Zamknij kod 1 z: / Users / katelyn / AndroidStudioProjects / flutter / examples / flutter_gallery / android / gradlew app: properties:

BŁĄD: kompilacja nie powiodła się z wyjątkiem.

  • Gdzie: Zbuduj wiersz pliku „/Users/katelyn/AndroidStudioProjects/flutter/examples/flutter_gallery/android/app/build.gradle”: 20

  • Co poszło nie tak: wystąpił problem podczas oceny projektu „: aplikacja”. 3

  • Spróbuj: Uruchom z opcją --stacktrace, aby uzyskać ślad stosu. Uruchom z opcją --info lub --debug, aby uzyskać więcej danych wyjściowych dziennika.

  • Uzyskaj dodatkową pomoc na https://help.gradle.org

BUDOWA NIE POWIODŁA SIĘ za 0 s

Przejrzyj konfigurację projektu Gradle w folderze android /.

Z góry przepraszam, nie mam wystarczającej reputacji, aby przesyłać zdjęcia.

Katelyn
źródło
Możesz użyć Android Studio, otworzyć i uruchomić bardziej płaski projekt. Właśnie przetestowałem to pomyślnie w Android Studio
Krunal
Czy zaktualizowałeś coś w swoimprojectSource > android > gradle.build
Krunal

Odpowiedzi:

210

Miałem ten sam problem po zaimportowaniu projektu flutter z gita. Oto kroki prowadzące do rozwiązania problemu.

  1. Plik-> Ustawienia-> Język i struktura-> Flutter
  2. Wybierz ścieżkę flutter SDK: przy pierwszej instalacji fluttera wybieramy lokalizację, w której ma zostać zainstalowany flutter. Wybierz tę lokalizację.
  3. Kliknij OK, a Android Studio odświeży się. Kontynuuj, jeśli problem został rozwiązany.
  4. Jeśli nadal masz problem z błędem.
  5. Przejdź do tego łącza i zainstaluj Dart.
  6. Idź do tego samego miejsca w ustawieniach, .. Język & Framework-> Dart i wybierz lokalizację SDK.

To rozwiązało problemy dla mnie.

Sajeer Ahamed
źródło
Rzuć i wybierz lokalizację SDK oznacza - którą ścieżkę należy wybrać
Avid Programmer
Wszystkie kroki są idealne i nadal nie jesteś w stanie rozwiązać, po prostu otwórz pubspec.yamli kliknij Packages Get. To wszystko rozwiąże.
Purvik Rana
1
to działało dla mnie
core114
123

Zwykle dzieje się tak z projektami, które powstały na innych maszynach. Aby naprawić ten problem w Android Studio 3.1.3:

  1. Plik-> Ustawienia (ctrl + alt + s)
  2. Języki i ramy -> Dart
  3. Zaznacz „Włącz obsługę Dart w projekcie ...”
  4. W „Dart SDK path” kliknij „...” i przejdź do katalogu flutter SDK. W tym katalogu znajdziesz „bin / cache / dart-sdk” . To jest ścieżka SDK Dart, której powinieneś użyć.
  5. Kliknij „Zastosuj”
  6. Zamknij projekt i otwórz go ponownie (czasami potrzebujesz tego kroku, czasami nie)

Edycja 2019-05-28 - Nie wiem, jak długo ta opcja jest włączona, ale zauważyłem, że w Android Studio 3.4 łatwiej jest włączyć obsługę Dart w projektach, które były tworzone na innych maszynach.

  1. Plik -> Synchronizuj projekt z plikami Gradle
  2. Po utworzeniu kliknij „Włącz obsługę rzutek” u góry panelu edytora.
Ricardo BRGWeb
źródło
4
Pracował dla mnie i rzeczywiście projekt powstał na innej maszynie.
Saad Ismail
3
Brakującą informacją był „bin / cache / dart-sdk”.
Raymond Chenon
1
Zrobiłem wszystko, aby skonfigurować flutter i dart, jedyną rzeczą, której brakowało, było zamknięcie i ponowne otwarcie studia Android, aby działało
Sergio Pardo
1
Pracowałem dla mnie na Macu po wymeldowaniu z Github, dzięki!
Fellow7000
1
Dzięki. To rozwiązało mój problem.
Muhammad Shahid
33

Miałem ten sam problem z Dart SDK i użyłem go do mojego rozwiązania. Aby rozwiązać ten problem bez konieczności używania terminala do testowania moich programów za każdym razem, gdy wykonałem kroki, które wykonałem, są następujące.

  1. Znajdź flutterścieżkę do zestawu SDK. Zrobiłem to, wpisując echo $PATHi znajdując ścieżkę za pomocą / flutter / bin.
  2. Zakładając, że twoja ścieżka jest czymś w rodzaju .../flutter/bindodawania jej do /cache/dart-sdk/bintworzenia .../flutter/bin/cache/dart-sdk/bin.
  3. To .../flutter/bin/cache/dart-sdk/binjest lokalizacja Twojego zestawu Dart SDK. Zakładając, że powiesz, że ten sam zestaw Dart SDK nie jest skonfigurowany, występuje błąd, w którym możesz skonfigurować swój zestaw Dart SDK. Kliknij opcję konfiguracji i ustaw .../flutter/bin/cache/dart-sdkjako zestaw SDK. To powinno rozwiązać twój problem. Jeśli nie, przejdź do następnego kroku.
  4. Otwórz preferencje Android Studio (Command + ',') i przejdź do Languages and Frameworks>Dart.
  5. W menu Dart powinieneś być w stanie wprowadzić ścieżkę Dart SDK .

Wykonałem te kroki, używając IntelliJ IDEA, więc powinny być prawie takie same. Jeśli to nie zadziałało, czasami wykonanie fikcyjnego projektu Dart może przywrócić działanie. To rozwiązało podobny problem dla mnie.

Nano
źródło
3
Powinna nastąpić mała zmiana: ścieżka powinna wyglądać następująco: /cache/dart-sdkbez / bin na końcu.
s_khan92
18

Na wypadek, gdyby inne odpowiedzi Ci nie pomogły

Jeśli używasz * nixOS lub Mac

  1. Otwórz terminal i wpisz which flutter. Otrzymasz coś takiego /Users/mac/development/flutter/bin/flutterw tym katalogu, przejdź do cachefolderu, w którym znajdziesz folder dart-sdk lub (i) dart-sdk.old. Skopiuj ich ścieżki.
  2. Otwórz preferencje, naciskając ctrl+alt+slub cmd+,na komputerze Mac. Pod Language & Frameworks choose Dartznajdź Dart SDK path. Umieść tam ścieżkę, którą skopiowałeś na pierwszym etapie. Kliknij Zastosuj.

Jeśli to nie rozwiązało problemu, musisz również ustawić ścieżkę Flutter SDK

  1. Pod Language & Frameworks choose Flutteri znajdź Flutter SDK pathpole.
  2. Twoja ścieżka Flutter SDK znajduje się dwa kroki wyżej w hierarchii folderów względem which flutterpolecenia, które otrzymałeś. Ustaw je na pole znalezione w kroku 1 tego nagłówka. Ponownie kliknij Zastosuj i kliknij Zapisz lub OK.
Alihaydar Gubatov
źródło
13

Flutter jest zwykle instalowany (na ilustracjach) w.

C:\src\Flutter

W przypadku instalacji Windows ...

Możesz spróbować uruchomić w flutter doctorprzypadku problemów z instalacją. Uruchom również, flutter upgradeaby uzyskać najnowszą wersję pakietów Flutter i Dart SDK.

DART SDK można znaleźć pod adresem

/flutter/bin/cache/dart-sdk
DL Narasimhan
źródło
To działało lepiej, po prostu określam pakiet SDK flutter i rozwiązałem problem z Dartem .
Lutaaya Huzaifah Idris
12

Zwykle dzieje się tak, gdy pobierasz projekty z github. normalnie ciemny sdk zawiera wewnętrzne trzepotanie.

możesz rozwiązać ten problem, wykonując kilka poniższych kroków

  1. przejdź do ustawienia za pomocą (Ctrl + Shift + s)
  2. przejdź do Języki i ramy
  3. idź do Dart
  4. Włącz obsługę Dark dla projektu
  5. Zmień ciemną ścieżkę sdk C:\flutter\bin\cache\dart-sdk
  6. Zastosować
Malith Ileperuma
źródło
3
i nie zapomnij wybrać modułu projektu przed złożeniem wniosku :)
Yako
9

Używam Win10 Pro ;

Jeśli używasz Android Studio i otrzymujesz ten komunikat ' Error: Dart SDK is not found in specified location',

Moja poprawka była taka.

  1. Przejdź do File/Settingslub, Ctrl+Alt+Saby wyświetlić okno ustawień.
  2. Zejdź do „ Language & Frameworksi kliknij Dart
  3. Czek Enable Dart support for the project 'YOUR_PROJECT_NAME'
  4. W polu Ścieżka Dart SDK path:wprowadź lokalizację, w której zapisujesz flutterkatalog.
  5. Przewiń ten katalog, aż zobaczysz katalog Dart SDK C:\flutter\bin\cache\dart-sdk. Możesz także Check SDK updatezaznaczyć pole i kliknąć, Check nowaby uzyskać najnowszą wersję.

To zadziałało dla mnie.

Sean
źródło
8

Idź do preferencji -> Języki i frameworki -> Flutter

Ustaw ścieżkę flutter sdk na przykład: - / Users / apple / flutter-sdk / flutter

następnie zastosuj swoje ustawienia.

Upewnij się, że są zainstalowane wszystkie zależności. jeśli nie jest uruchamiany - flutter pub getaby zainstalować zależności

Sarath Mohan
źródło
4

Niedawno napotkałem ten problem na moim urządzeniu MAC, kiedy uruchamiałem projekt flutter w Android Studio

Kroki, aby to naprawić.

  1. zainstaluj darta na MAC OS używając brew ( https://dart.dev/get-dart )

napar z kranu dart-lang / dart

napar zainstalować rzutkę

  1. biegać

napar info dart

  1. Otrzymasz coś takiego

Zwróć uwagę na ścieżkę do Dart SDK: / usr / local / opt / dart / libexec

wklej ścieżkę Dart SDK w ustawieniach Android Studio

maulikdhameliya
źródło
2

Uruchom to polecenie:

$ echo "$(dirname $(which flutter))/cache/dart-sdk"

Otrzymasz coś takiego:

/home/lex/opt/flutter/bin/cache/dart-sdk

Wpisz tę wartość jako ścieżkę Dart SDK.

l3x
źródło
2

Po prostu przejdź do Plik> Ustawienia> Języki i ramy> Dart

Kliknij pole wyboru Włącz obsługę Dart dla projektu „projectName” Wklej ścieżkę Dart SDK.

W ten sposób uzyskasz ścieżkę Dart SDK, postępuj zgodnie z podanymi krokami, skopiuj ścieżkę Dart SDK, która znajduje się w Flutter SDK, przejdź do lokalizacji, w której znajduje się Twój Flutter SDK, a następnie,

Flutter / bin / cache / dart-sdk, do dart-sdk, skopiuj ścieżkę i wklej ją.

Syed Sym
źródło
Plik flutter zawiera dart-sdk. Nie ma potrzeby ponownego ładowania. tnx
fucukur
1

System operacyjny: Ubuntu 19.04

IntelliJ: 2019.1.2RC

Przeczytałem wszystkie poprzednie odpowiedzi i po pewnym czasie próbując to naprawić stwierdziłem, że wtyczka IntelliJ Flutter nie chce ścieżki do which flutter zamiast tego potrzebuje podstawowego folderu instalacyjnego.

Więc 2 kroki, które naprawiły:

  1. Zainstaluj wtyczkę IntelliJ Flutter:
    • Ctrl+ Shift+a (Otwarte działania)
    • Wpisz wyszukiwanie „Flutter”, naciśnij Enter Zainstaluj i uruchom ponownie IntelliJ
  2. Skonfiguruj wtyczkę Flutter:
    • Ctrl+ Alt+ s(Otwórz ustawienia)
    • Wpisz w wyszukiwarce „Flutter”, wybierz opcję w obszarze Język i ramy
    • Otwórz zacisk which flutter wyjściowy PATH_TO_FLUTTER/bin/flutter Ci wystarczyPATH_TO_FLUTTER więc usunąć wszystko z/bin...
    • Wklej lokalizację na Flutter SDK pathwejściu i zastosuj.

Następnie poprosi Cię o ponowne uruchomienie IntelliJ i powinieneś skonfigurować zarówno Flutter, jak i Dart:

wprowadź opis obrazu tutaj

Powodzenia!

T04435
źródło
1

W moim przypadku Dart zainstalowano również osobno do rozwoju rzutek z najnowszymi. Więc kiedy IntelliJ zasugerował mi skonfigurowanie rzutki, uderzyłem w niego, a potem wskazałC:/tools/dart że tak jest.

Musiałem więc przejść do File->Settings->Language & Framework->darti dodać ścieżkę SDK do mojej ścieżki Flutter sdk za pomocą Dart SDK C:\flutter\bin\cache\dart-sdk.

Zwróć uwagę, że jak wspominali inni, jeśli wskazałeś ścieżkę Flutter SDK, możesz nie być potrzebny do skonfigurowania ścieżki Dart SDK, ponieważ Flutter SDK zawiera Dart SDK .

Blasanka
źródło
0

podobnie jak powyżej, otrzymałem ścieżkę dart sdk z projektu, który utworzyłem z flutter (nie sklonowany), przechodząc do Preferencje Android Studio | Języki i ramy | Strzałka. Następnie podobnie w sklonowanym projekcie przejdź do Preferencje | Języki i ramy | Dart i „Włącz obsługę Dart dla projektu ...” i wprowadź zapisaną ścieżkę.

trzepotanie
źródło
0

Wiele odpowiedzi tutaj, ale wydaje mi się, że większość nie ma sensu.

Uruchamiasz to polecenie z powłoki i większość, jeśli nie wszystkie odpowiedzi, są związane z działaniem w środowisku IDE . Jest różnica.

Jeśli używasz powłoki do uruchamiania poleceń Dart / Flutter, upewnij się, że skonfigurowałeś zmienne środowiskowe niezbędne dla poleceń, aby wiedzieć, gdzie szukać odpowiednich narzędzi.

Osobiście, ponieważ pracuję głównie na laptopie, odciążyłem mój główny dysk z całej przestrzeni wymaganej przez narzędzia programistyczne, przenosząc wszystko na dysk zewnętrzny, jak opisano w tej odpowiedzi , więc muszę powiedzieć systemowi, w którym umieścił różne komponenty.

To samo dotyczy uruchamiania poleceń z wiersza poleceń w porównaniu z IDE, ponieważ IDE może przechowywać tę konfigurację, podczas gdy powłoka nie będzie tego robić, chyba że zapiszesz ją w plikach startowych powłoki.

Używam macOS, Homebrew i ZShell i lubię mieć Dart SDK jako oddzielną instalację, więc mogę śledzić gałąź DEV dla Dart przez Homebrew, podczas gdy moja instalacja Flutter korzysta z gałęzi BETA.

Tak więc w moim ~/.zprofilemam:

export HOMEBREW_PREFIX="$(brew --prefix)"

# Android / Java, Dart / Flutter related
export FLUTTER_ROOT="${SSD}/Lib/flutter" # Path to your main Flutter install
export DART_SDK="${HOMEBREW_PREFIX}/opt/dart/libexec" # Separate Dart SDK install
export JAVA_HOME="/Library/Java/JavaVirtualMachines/adoptopenjdk-8.jdk/Contents/Home" # JDK
export ANDROID_SDK_ROOT="${SSD}/Lib/android/sdk" # Top-level Android SDK directory
export ANDROID_HOME="${SSD}/Lib/android/sdk" # Same as above, needed by other tools I use
export ANDROID_AVD_HOME="${SSD}/Lib/android/avd" # Path to the moved emulators etc

Następnie upewniam się, że $PATHzmienna jest ustawiona we właściwej kolejności, więc kiedy wykonuję polecenia specyficzne dla Dart, używana jest aktualna gałąź Dart DEV, podczas gdy polecenia Flutter będą używać gałęzi Flutter BETA.

Jeśli używasz Zsh lub Bash, dodaj dodatkowe ścieżki odpowiednio na końcu .zshrc lub .bashrc, ponieważ są one wywoływane dla każdego terminala / powłoki uruchamianego po zalogowaniu:

# Prepending to already established PATH

export PATH="\
/Library/Java/JavaVirtualMachines/adoptopenjdk-8.jdk/Contents/Home/bin:\
${HOME}/.pub-cache/bin:\
${HOMEBREW_PREFIX}/opt/dart/libexec/bin:\
${SSD}/Lib/flutter/.pub-cache/bin:\
${SSD}/Lib/flutter/bin:\
${SSD}/Lib/android/sdk/platform-tools:\
${SSD}/Lib/android/sdk/tools/bin:\
${SSD}/Lib/android/sdk/emulator:\
${PATH}"

# If you're using Zsh, add this to clean up duplicate entries building up from running this 
# in every Terminal you launch:
# Remove duplicates from $PATH
typeset -aU path;

# Not sure, but in Bash, to remove duplicates you could do something like:
echo -n $PATH | awk -v RS=: '!($0 in a) {a[$0]; printf("%s%s", length(a) > 1 ? ":" : "", $0)}'

To było mnóstwo rzeczy, ale w ten sposób utrzymuję kolejność operacji ...

cseder
źródło
0

Szybszy sposób ...

Otwórz android studio ... przejdź do menu plików .... znajdziesz tam Unieważnij pamięć podręczną / Uruchom ponownie ... kliknij i odpowiedz na wyskakujące okienko jako Unieważnij i uruchom ponownie

Twoje studio Android zostanie ponownie uruchomione i gotowe.

Naprawdę mi pomogło.

Malarvizhi Mahalingam
źródło
-3

W rzeczywistości dobrym zwyczajem jest sprawdzanie ustawień przed uruchomieniem aplikacji.

  1. Czy sprawdziłeś ścieżkę java SDK? (W rzeczywistości, jeśli uruchomiłeś już inną aplikację, ale nie udało ci się jej uruchomić, co może być pobrane z Github lub innych.
  2. wtedy może być konieczne sprawdzenie ustawień trzepotania i ustawień rzutek.
wsq_star
źródło
Ale co ma tutaj zrobić ścieżka java SDK?
Sisir