Błąd uruchamiania React Native App From Terminal (iOS)


394

Postępuję zgodnie z samouczkiem na oficjalnej stronie React Native.

Wykorzystując następujące elementy do zbudowania mojego projektu:

react-native run-ios

Dostaję błąd:

Found Xcode project TestProject.xcodeproj
xcrun: error: unable to find utility "instruments", not a developer   
tool or in PATH

Command failed: xcrun instruments -s
xcrun: error: unable to find utility "instruments", not a developer 
tool or in PATH

Chociaż kiedy uruchamiam aplikację z .xcodeproj, wszystko działa dobrze.

Jakieś sugestie?


stackoverflow.com/questions/60227353/… Czy ktoś może mi pomóc w tych błędach
Shaharyar Jafri

Odpowiedzi:


952

Sprawdź ten link ( Uruchamianie natywnego run-ios występuje błąd? ). Wygląda na to, że jest to problem z lokalizacją Command line tools.

W Xcode wybierz menu Xcode, następnie Preferencje, a następnie zakładkę Lokalizacje. Wybierz wersję Xcode z rozwijanego menu i wyjdź z Xcode.

Karta lokalizacji XCode


@JacobSiegel, proszę podać więcej informacji o karcie Lokalizacje w XCode.
leo7r 30.09.16

9
@ leo7r Dziękuję. Moje narzędzia CL były puste. Zmieniłem ustawienie na Xcode 8.0 i to rozwiązało problem. Możesz to podkreślić w swojej odpowiedzi. Twoje zdrowie!
AndrewHenderson

Lista rozwijana Narzędzia wiersza poleceń była dla mnie pusta. Jedyną opcją, którą miałem po kliknięciu, był Xcode 9.2, który wybrałem, zapisałem zmiany i instrumenty były dostępne do zareagowania natywnego. dzięki!
Joey T

Zrobiłem to i z jakiegoś powodu instalacja homebrew wyłączyła go. Musiałem wybrać go ponownie z xcode po zainstalowaniu homebrew.
qwertzguy

1
Nadal występuje błąd, nawet po wybraniu CLT ...: /
Mayoul

139

Może być konieczne zainstalowanie lub ustawienie lokalizacji narzędzi wiersza polecenia Xcode .

Za pomocą wiersza poleceń

Jeśli masz pobrany kod Xcode, możesz uruchomić następujące polecenie, aby ustawić ścieżkę:

sudo xcode-select -s /Applications/Xcode.app

Jeśli narzędzia wiersza polecenia nie zostały jeszcze zainstalowane, może być konieczne uruchomienie tego w pierwszej kolejności:

xcode-select --install

Przed zainstalowaniem narzędzi wiersza polecenia może być konieczne zaakceptowanie licencji Xcode:

sudo xcodebuild -license accept 

Przez Xcode

Lub dostosuj Command Line Toolsustawienie za pomocą Xcode ( Xcode > Preferences > Locations):

Preferencje Xcode - zakładka Lokalizacje


Działa jak marzenie! <3
Rishav Kumar

15

Domyślnie po zainstalowaniu niezaznaczonego wiersza polecenia Xcode , otwórz Xcode i przejdź do Preferencji >> Lokalizacje i ustaw Narzędzia wiersza poleceń ...

Działa to dla mnie w MAC High Sierra , wersja Xcode 9.3 :

Preferencje Xcode

Naciśnij, iaby otworzyć emulator iOS ...

Naciśnij a, aby otworzyć urządzenie lub emulator Androida, lub i, aby otworzyć emulator iOS.

I możesz zobaczyć fajny nowy symulator iPhone'a, jak na poniższym obrazku:

React Native print, I'm Alireza Dezfoolian, programista Front End!


2
Najlepsza odpowiedź, najlepsza z najlepszych.
AmerllicA,

13

W moim przypadku problem polegał na tym, że Xcode nie został zainstalowany.


Czy możesz wyjaśnić powód głosowania? To była prawdziwa odpowiedź. Otrzymałem dokładnie ten sam błąd.
Heisenberg

oficjalna strona internetowa zareaguj wyraźnie stwierdza, że ​​potrzebujesz Xcode, aby zareagować na działanie.
JacobSiegel,

6
Postępowałem zgodnie z samouczkiem dla początkujących, który zakładał, że xcode jest już zainstalowany i nie wspomina o nim. Ten błąd nie oznacza, że ​​nie masz zainstalowanego xcode. Tak więc nigdy bym nie wiedział.
Heisenberg

11

Musiałem zaakceptować licencję XCode po mojej pierwszej instalacji, zanim mogłem ją uruchomić. Możesz uruchomić następujące polecenie, aby uzyskać wiersz licencji za pomocą wiersza polecenia. Musisz także wpisać agreei potwierdzić.

sudo xcodebuild -license

Możesz także natychmiast zaakceptować licencję, jeśli chcesz: sudo xcodebuild -license accept(źródło: apple.stackexchange.com/a/213151/89456 )
odlp

7

Problem polega na tym, że twoja wersja Xcode nie jest ustawiona w Narzędziach wiersza poleceń, aby rozwiązać ten problem otwórz Xcode> Menu> preferencje> lokalizacja> tutaj dla narzędzi wiersza poleceń wybierz wersję Xcode, to wszystko. wprowadź opis zdjęcia tutaj


4

Dla takich jak ja, którzy odwiedzają tę stronę z tym problemem po aktualizacji Xcode, ale nie mają problemu z ustawieniem lokalizacji, ponowne uruchomienie komputera załatwiło sprawę.


3

Dla mnie okazuje się, że była aktualizacja systemu iOS z prośbą o ponowne uruchomienie komputera. Uruchom ponownie i pozwól, aby aktualizacja zakończyła mój problem.


1

W moim przypadku zmienna środowiskowa SDKROOT była niepoprawna i odnosiła się do starej wersji iPhoneOSxx.x.sdk. (Być może rozwiązałoby się to automatycznie po ponownym uruchomieniu?)

Możesz to sprawdzić, uruchamiając echo $SDKROOTi sprawdzając, czy jest to poprawna ścieżka.

Naprawiłem to poprzez aktualizację w .bash_profile:

export SDKROOT=/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS11.2.sdk

1

Żadne z tych rozwiązań nie działało dla mnie. Te dwa podobne problemy oferują tymczasowe rozwiązania, które działały, wygląda na to, że proces symulatora nie został poprawnie zamknięty:

Zabijanie procesów symulatora

Od https://stackoverflow.com/a/52533391/11279823

  1. Wyjdź z symulatora i Xcode.
  2. Otwarta Activity monitor, wybrana cpuopcja i wyszukaj sim, zabijając cały proces pokazany jako wynik.
  3. Następnie odpaliłem terminal i uciekłem sudo xcrun simctl erase all. Spowoduje to usunięcie całej zawartości wszystkich symulatorów. Według treści, jeśli gdzieś się zalogujesz, hasło zniknie, znikną wszystkie aplikacje dla programistów zainstalowane w tym symulatorze.

Otwieranie symulatora przed uruchomieniem pakietu

Od https://stackoverflow.com/a/55374768/11279823

open -a Simulator; npm start

Mamy nadzieję, że uda się znaleźć trwałe rozwiązanie.


1

1) Przejdź do Preferencji Xcode

2) Znajdź kartę lokalizacji

3) Ustaw wersję Xcode w danym narzędziu wiersza poleceń

Teraz z powodzeniem będzie działać.


0

W systemie Mac: W końcu pojawia się ten problem, może istnieć szansa, że ​​w Preferencjach systemowych -> Sieć -> Ethernet -> Wybierz zaawansowane -> Serwery proxy mogą nie zostać uwzględnione

dodaj następujący wiersz,

* .local, localhost


0

W przypadku każdego takiego problemu:

  1. Idź do .expofolderu
  2. Odnaleźć apk-cache
  3. Usuń ten folder

i gotowe.

Mam nadzieję, że to pomoże?

Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.