Po uruchomieniu react-native run-ios
kompilacja kończy się pomyślnie, ale pojawia się poniższy błąd. Sprawdziłem wszędzie, ale wydaje się, że nic nie działa. Używanie sudo
przed poleceniem też nie pomaga. Używam Xcode 7.3, React-Native-Cli: 0.2.0, React-Native: 0.24.1, Węzeł v5.11.0.
=== BUILD TARGET mobileTests OF PROJECT mobile WITH CONFIGURATION Release ===
Check dependencies
** BUILD SUCCEEDED **
Installing build/Build/Products/Debug-iphonesimulator/mobile.app
An error was encountered processing the command (domain=NSPOSIXErrorDomain, code=2):
Failed to install the requested application
An application bundle was not found at the provided path.
Provide a valid path to the desired application bundle.
Print: Entry, ":CFBundleIdentifier", Does Not Exist
/Users/astiefel/workspace/bosspayments/mobile/node_modules/promise/lib/done.js:10
throw err;
^
Error: Command failed: /usr/libexec/PlistBuddy -c Print:CFBundleIdentifier build/Build/Products/Debug-iphonesimulator/mobile.app/Info.plist
Print: Entry, ":CFBundleIdentifier", Does Not Exist
at checkExecSyncError (child_process.js:470:13)
at Object.execFileSync (child_process.js:490:13)
at _runIOS (runIOS.js:91:34)
at runIOS.js:24:5
at tryCallTwo (/Users/astiefel/workspace/bosspayments/mobile/node_modules/promise/lib/core.js:45:5)
at doResolve (/Users/astiefel/workspace/bosspayments/mobile/node_modules/promise/lib/core.js:200:13)
at new Promise (/Users/astiefel/workspace/bosspayments/mobile/node_modules/promise/lib/core.js:66:3)
at Array.runIOS (runIOS.js:23:10)
at Object.run (/Users/astiefel/workspace/bosspayments/mobile/node_modules/react-native/local-cli/cli.js:86:13)
at Object.<anonymous> (/usr/local/lib/node_modules/react-native-cli/index.js:88:7)
ios
reactjs
react-native
astiefel
źródło
źródło
Odpowiedzi:
Otwórz projekt w Xcode
Jeśli polecenie Xcode> 9 run
react-native upgrade
(spowoduje to nadpisanie wszystkich konfiguracji iOS, należy zachować ostrożność) !)następnie
1.Przejdź do Plik -> Ustawienia projektu
2. Kliknij przycisk Zaawansowane
3. Wybierz „Niestandardowy” i wybierz „Względem obszaru roboczego” w menu rozwijanym
4. Zmień „Build / Products” na „Build / Build / Products” i „Build / Intermediates” na „Build / Build / Intermediates”
5. kliknij gotowe, gotowe
źródło
Taka sytuacja może wystąpić, jeśli brakuje pliku config.h ,
Aby zaktualizować plik config.h ,
1) Zamknij Xcode.
2) Otwórz Terminal, przejdź do folderu głównego swojego projektu i wykonaj:
3) Uruchom skrypt konfiguracyjny:
4) Otwórz Xcode i spróbuj uruchomić aplikację.
źródło
configure
skryptu, jak w 0.58?Aktualizacja React za pomocą
react-native upgrade
zrobiła to za mnie.Zastrzeżenie : spowoduje to nadpisanie wszystkich konfiguracji iOS, używaj ostrożnie !
źródło
Jeśli używasz Xcode 10, może to być spowodowane niekompatybilnością z najnowszym systemem kompilacji Xcode. Spróbuj przełączyć się na starszy system kompilacji.
Otwórz Xcode 10, Plik> Ustawienia projektu> Buduj system> przełącz listę rozwijaną do Starszego systemu kompilacji.
źródło
Mój problem polegał na tym, że moja kompilacja była w trybie wydania, a nie w trybie debugowania. W rezultacie identyfikator wskazywał na coś, czego nie było. Zmieniłem typ kompilacji i wszystko zaczęło działać.
źródło
Product
->Scheme
->Edit Scheme
a następnie wybierz Debug w sekcji Build ConfigurationTrafiłem też na ten problem i znalazłem sposób na jego naprawienie
Oto co zrobiłem:
1) Upewnij się, że w katalogu plików nie ma spacji.
2) katalog projektu cd
3) uruchom polecenie react-native upgrade
4) Przejdź do natywnego folderu ios i otwórz projekt xcode.
5) Przejdź do Plik> Ustawienia projektu> Zaawansowane ...
6) wybierz niestandardowy> Względem obszaru roboczego
7) ścieżka produktów powinna mieć postać „buduj / buduj / produkty”
8) ścieżka pośrednia powinna brzmieć `` build / Build / Intermediates ''
9) Teraz spróbuj uruchomić polecenie w swoim terminalu react-native run-ios
Mam nadzieję, że te rozwiązania pomogą niektórym z nas zmierzyć się z tym problemem.
źródło
Dla
[email protected]
mnie to załatwiło:1) Sprawdź ścieżki, otwórz plik .xcodeproj (nie .xcworkspace) i:
przejdź do Plik> Ustawienia projektu> Zaawansowane
niestandardowe> Względem obszaru roboczego
'build/Build/Products'
'build/Build/Intermediates'
2) Uruchom
rm -rf ios/build
w katalogu głównym projektu3) Zamknij swój pakiet reakcyjny
4) Uruchom
react-native run-ios
ponownieźródło
.xcworkspace
config.Splashscreen
błąd, więc czy mówisz, że postępowałeś zgodnie z krokiem Timsa, z wyjątkiem tego, że zrobiłeś to w środkuxcworkspace
?Przydarzyło mi się to, gdy mój folder node_modules przestał działać po zainstalowaniu nowego pakietu. Zabiłem folder,
rm -rf node_modules
a następnienpm install
ponownie zainstalowałem moje pakiety i to naprawiło.źródło
Print: Entry, ":CFBundleIdentifier", Does Not Exist
Wiadomość tylko wskazuje projekt nie sporządza lub link. Będziesz musiał cofnąć się do wyników, aby znaleźć wskazówkę dotyczącą rzeczywistej przyczyny źródłowej.Jeśli masz problemy, spójrz na pełny wynik kompilacji, a nie tylko na kilka ostatnich wierszy. Możesz otworzyć projekt w Xcode i nacisnąć ⌘B, aby go zbudować. Błędy kompilacji w Xcode powinny pomóc w znalezieniu głównej przyczyny niepowodzenia.
źródło
Jeśli otrzymałeś ten błąd, prawdopodobnie nie masz poprawnej ścieżki do swojej aplikacji.
React Native zakodował to na sztywno jako część swojego polecenia run-ios w runIOS.js
Niestety, Xcode ma różne ścieżki kompilacji w zależności od konfiguracji i od tego, czy używasz projektu Xcode, czy obszaru roboczego. Uważam, że domyślną ścieżką do projektu Xcode jest
build/Products
.Wysłałem to żądanie ściągnięcia 11899, aby dać programistom większą elastyczność z CLI.
źródło
Dla mnie był to problem z przypadkowym ustawieniem modułów przy użyciu Cocoapods &
react-native link
w tym samym czasie.Nie mieszaj tych dwóch dla tych samych modułów!
źródło
Naprawiłem to, usuwając
/build/
i uruchamiającreact-native run-ios
ponownieźródło
Provide a valid path to the desired application bundle.
na swojej konsoli? Wypróbuj następujące ustawienia xcodefile => project settings, build system: legacy, derived data: project-relative, DerivedData in the input => advanced, custom, relative to workspace, build/Build/ in the first 2 inputs
Czy sprawdziłeś, czy zadeklarowałeś identyfikator paczki? Możesz to zrobić, klikając plik projektu w xcode, a następnie wybierając kartę ogólną, która znajduje się pod pierwszym polem tekstowym w sekcji „Tożsamość”. Innym sposobem sprawdzenia jest wpisanie pliku info.plist w folderze ios projektu. Tak to widać w mojej info.plist. Mój rzeczywisty identyfikator pakietu dla mojego projektu to xcode.
źródło
W moim przypadku pobieram projekt z gita i zawiera on również folder ios.
Najpierw usuwam folder ios
rm -rf ios
,react-native upgrade
źródło
Aby rozwiązać ten błąd, wykonaj poniższe czynności:
Krok 1
Krok 2
Krok 3
Krok 4
Krok 5
Krok 6
Mam nadzieję, że to zadziała !!!
źródło
Wypróbowałem wszystkie te rozwiązania, ale jedno, które zadziałało, to:
react-native upgrade
źródło
Zaktualizowałem Xcode do v8 i błąd został rozwiązany.
źródło
0.44 jest ok do uruchomienia , ale 0.45 nie może , być może jest to problem z wersją, który rozwiązałem za pomocą następującego polecenia : rninit init TaxiApp --source [email protected];
źródło
Mój terminal wyskakuje ten sam komunikat z powodu usunięcia niektórych symulatorów, których nie używam w Xcode.
Jeśli uciekniesz
react-native run-ios
bez określonych parametrów, react-native uruchomi domyślny symulator, którym w moim przypadku jest iPhone 6 z iOS 10.3.1 i przypadkowo usunąłem ten symulator.Oto moje komunikaty o błędach:
. . .
Aby się ich pozbyć, otwórz Xcode i sprawdź dostępne symulatory (takie same jak wymieniony terminal) i uruchom
react-native run-ios --simulator="your device name"
W moim przypadku biegam
react-native run-ios --simulator="iPhone 7"
, problem został rozwiązany.źródło
Po kilku miesiącach próbowania wszystkich odpowiedzi, w końcu zaktualizowałem system operacyjny do Sierra, zaktualizowałem XCode do najnowszej wersji i wszystkie błędy znikają. Mam nadzieję, że to może pomóc niektórym ludziom!
źródło
Dodając, to działa u mnie, gdy nic powyżej nie naprawia:
npm i -g react-native-git-upgrade && react-native-git-upgrade
npm i -g react-native-cli
nvm install --lts
invm install-latest-npm
npm install
ireact-native run-ios
i przytul mnie :-)W końcu to działa.
źródło
Używanie tej wersji działa dla mnie z xcode 10.1
źródło
Wszystkie te sugestie rozwiązania nie zadziałały dla mnie. Właśnie stworzyłem projekt rn 0.58.5. I w porównaniu z moim projektem. Widziałem, że nie ma
JavaScriptCore.framework
podBuild Phasess
>Link Binary With Libraries
. Po przeciągnięciu i upuszczeniu skompilowanie natywnego środowiska run-ios JavaScriptCore powiodło się.JavaScriptCore.framework
Lokalizacja:Macintosh HD ▸ Applications ▸ Xcode ▸ Contents ▸ Developer ▸ Platforms ▸ iPhoneOS.platform ▸ Developer ▸ SDKs ▸ iPhoneOS.sdk ▸ System ▸ Library ▸ Frameworks
źródło
Dla mnie były to zależności ios zarządzane przez cocoapody.
Musiałem to zrobić:
To zadziałało dla mnie
https://shift.infinite.red/beginner-s-guide-to-using-cocoapods-with-react-native-46cb4d372995
PS: Próbowałem wymyślić pracę wykonaną przez kogoś innego
źródło
pod init
i masz prawidłowy plik Podfile. Nie głosuj negatywnie, jeśli nie masz wystarczającej wiedzy, aby odpierać swoje roszczenia. Ponieważ był to projekt kogoś innego, jak wspomniałem, miałem już plik PodFile. Całkowicie usunąłem konfigurację kapsuły dla ludzi takich jak ty.Komunikat o błędzie podobny do
The domain/default pair of (../ios/Runner/Info, CFBundleIdentifier) does not exist
Oznacza Xcode, że
plist
maszinvalid format content
.Musisz wkleić zawartość
Info.plist
pliku, aby dowiedzieć się, co jest nie tak z tym plikiem.Jednym z możliwych problemów jest to, że te
<key>
s i<values>
s (<array>
s,<string>
s lub<bool>
s) nie są sparowane poprawnie. Na przykład:Musisz tylko przesunąć
key
ivalue
togatherźródło
To działa dla mnie Kliknij projekt RCTWebSocket w swoim nawigatorze i usuń flagi w ustawieniach kompilacji> niestandardowe flagi kompilatora
źródło
Znalazłem sposób rozwiązania problemu: NIE używaj miejsca na ścieżce projektu! 🎉 😄
źródło
To zadziałało dla mnie. Postępuj zgodnie z instrukcjami https://facebook.github.io/react-native/docs/getting-started.html (Budowanie projektów z kodem natywnym).
Przed uruchomieniem polecenia react-native run-ios pobierz moduł boost node z https://sourceforge.net/projects/boost/files/boost/1.63.0/ i zamień node_modules / react-native / third-party / boost_1_63_0
Teraz uruchom responsywną komendę run-ios
źródło
Po uruchomieniu
npm install
polecenia przez jakiś czas problem z Internetem, pliki wnode_modules\react-native\third-party
nie są poprawnie pobierane, więc sprawdź, czy jest poprawnie pobrane, czy nie, jeśli nie, usuń node_modules i zainstaluj go ponownienastępnie uruchom
react-native run-ios
polecenieźródło
Podstawowym powodem jest to, że wdrażanie portu nie jest darmowe. Albo zrestartujesz urządzenie i zwolnisz wszystkie porty, w przeciwnym razie uruchom
$ lsof -i :8081
i znajdź proces, który zajmował port 8081. Zabij proces, który używa portu 8081, uruchamiając$ kill -9 {process_which_is_running_under_8081}
źródło