Wenn ich react-native run-ios
den Build ausführe , ist er erfolgreich, aber ich erhalte den folgenden Fehler. Ich habe überall nachgesehen, aber nichts scheint zu funktionieren. Die Verwendung sudo
vor dem Befehl hilft auch nicht. Ich verwende Xcode 7.3, React-Native-Cli: 0.2.0, React-Native: 0.24.1, Node 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
quelle
quelle
Antworten:
Öffnen Sie das Projekt in Xcode
Wenn Xcode> 9 Befehl ausführen
react-native upgrade
(dies überschreibt alle Ihre iOS-Konfigurationen, verwenden Sie mit Vorsicht !)dann
1.Gehen Sie zu Datei -> Projekteinstellungen
2.Klicken Sie auf die Schaltfläche Erweitert
3.Wählen Sie "Benutzerdefiniert" und wählen Sie im Pulldown "Relativ zum Arbeitsbereich"
4.Ändern Sie "Build / Produkte" in "Build / Build / Produkte" und "Build / Intermediates" in "Build / Build / Intermediates".
5.Klicken Sie auf Fertig, fertig
quelle
Dies kann vorkommen, wenn Sie die Datei config.h vermissen .
Für die Datei config.h aktualisieren ,
1) Schließen Sie Ihren Xcode.
2) Öffnen Sie Terminal, gehen Sie zum Stammordner Ihres Projekts und führen Sie folgende Schritte aus:
3) Führen Sie das Konfigurationsskript aus:
4) Öffnen Sie Xcode und versuchen Sie, Ihre App auszuführen.
quelle
configure
Skript gibt, wie in 0.58?Update React using
react-native upgrade
hat es für mich getan.Haftungsausschluss : Dies überschreibt alle Ihre iOS-Konfigurationen. Seien Sie vorsichtig !
quelle
Wenn Sie Xcode 10 verwenden, liegt dies möglicherweise an einer Inkompatibilität mit dem neuesten Build-System von Xcode. Versuchen Sie, zum Legacy-Build-System zu wechseln.
Öffnen Sie Xcode 10, Datei> Projekteinstellungen> Build-System> Dropdown-Liste zu Legacy-Build-System.
quelle
Mein Problem war eigentlich, dass mein Build im Release-Modus statt im Debug-Modus war. Infolgedessen zeigte der Bezeichner auf etwas, das nicht existierte. Ich habe den Build-Typ geändert und es hat funktioniert.
quelle
Product
->Scheme
->Edit Scheme
und wählen Sie dannIch bin auch auf dieses Problem gestoßen und habe einen Weg gefunden, es zu beheben
Folgendes habe ich getan:
1) Stellen Sie sicher, dass das Dateiverzeichnis keine Leerzeichen enthält.
2) CD- Projektverzeichnis
3) Führen Sie den Befehl react-native upgrade aus
4) Gehen Sie zum nativen ios-Ordner und öffnen Sie das xcode-Projekt.
5) Gehen Sie zu Datei> Projekteinstellungen> Erweitert ...
6) Wählen Sie Benutzerdefiniert> Relativ zum Arbeitsbereich
7) Der Produktpfad sollte "Build / Build / Produkte" sein.
8) Der Zwischenpfad sollte "Build / Build / Intermediates" sein.
9) Versuchen Sie nun, den Befehl in Ihrem Terminal auszuführen
Ich hoffe, dass diese Lösungen einigen von uns helfen werden, sich diesem Problem zu stellen.
quelle
Für
[email protected]
das Folgende hat der Trick für mich getan:1) Überprüfen Sie Ihre Pfade, öffnen Sie Ihre .xcodeproj-Datei (nicht .xcworkspace) und:
Gehen Sie zu Datei> Projekteinstellungen> Erweitert
custom> Relativ zum Arbeitsbereich
'build/Build/Products'
'build/Build/Intermediates'
2) Führen
rm -rf ios/build
Sie im Stammverzeichnis Ihres Projekts aus3) Schließen Sie Ihren React Packager
4)
react-native run-ios
Wieder ausführenquelle
.xcworkspace
Konfiguration vorgenommen.Splashscreen
Fehler behoben. Wollen Sie damit sagen, dass Sie Tims Schritt gefolgt sind, außer Sie haben es innerhalb von getanxcworkspace
?Dies war mir passiert, als mein Ordner node_modules nach der Installation eines neuen Pakets verrückt wurde. Ich habe den Ordner getötet
rm -rf node_modules
und dann eine durchgeführtnpm install
, um meine Pakete neu zu installieren, und das hat es behoben.quelle
Die
Print: Entry, ":CFBundleIdentifier", Does Not Exist
Nachricht zeigt nur an, dass Ihr Projekt nicht kompiliert oder verknüpft werden konnte. Sie müssen Ihre Ausgabe erneut durchgehen, um einen Hinweis auf die eigentliche Grundursache zu finden.Wenn Sie Probleme haben, sehen Sie sich die vollständige Build-Ausgabe an, nicht nur die letzten Zeilen. Möglicherweise möchten Sie das Projekt in Xcode öffnen und ⌘B drücken, um es zu erstellen. Die Erstellungsfehler in Xcode sollen Ihnen helfen, die Hauptursache des Fehlers zu finden.
quelle
Wenn Sie diesen Fehler erhalten haben, haben Sie wahrscheinlich nicht den richtigen Pfad für Ihre Anwendung.
React Native hat es als Teil seines Befehls run-ios in runIOS.js fest codiert
Leider hat Xcode je nach Konfiguration und Verwendung eines Xcode-Projekts oder eines Arbeitsbereichs unterschiedliche Erstellungspfade. Ich glaube, der Standardpfad für ein Xcode-Projekt ist
build/Products
.Ich habe diese Pull-Anfrage 11899 eingereicht , um Programmierern mehr Flexibilität über die CLI zu bieten .
quelle
Für mich war es ein Problem, versehentlich Module mit Cocoapods &
react-native link
gleichzeitig einzurichten .Mischen Sie diese beiden nicht für dieselben Module!
quelle
Ich habe dies behoben, indem ich es gelöscht
/build/
undreact-native run-ios
erneut ausgeführt habequelle
Provide a valid path to the desired application bundle.
in Ihrer Konsole? Versuchen Sie die folgenden Xcode-Einstellungenfile => 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
Haben Sie überprüft, ob Sie eine Bundle-ID deklariert haben? Sie können dies tun, indem Sie in xcode auf Ihre Projektdatei klicken und dann die Registerkarte Allgemein auswählen. Diese wird im ersten Textfeld unter "Identität" aufgeführt. Eine andere Möglichkeit zum Überprüfen besteht darin, Ihre Datei info.plist im Ordner ios Ihres Projekts einzuchecken. So wird es in meiner info.plist angezeigt. Meine eigentliche Bundle-ID für mein Projekt ist in xcode.
quelle
In meinem Fall ziehe ich das Projekt aus git und es enthält auch den ios-Ordner.
Zuerst entferne ich dann ios Ordner
rm -rf ios
,react-native upgrade
quelle
Sie können die folgenden Schritte ausführen, um diesen Fehler zu beheben:
Schritt 1
Schritt 2
Schritt 3
Schritt 4
Schritt 5
Schritt 6
Ich hoffe das wird funktionieren !!!
quelle
Ich habe alle diese Lösungen ausprobiert, aber die, die für mich funktioniert hat, ist:
react-native upgrade
quelle
Ich habe Xcode auf v8 aktualisiert und der Fehler wurde behoben.
quelle
Die 0.44 ist in Ordnung zu laufen, aber 0.45 kann nicht. Vielleicht ist das Versionsproblem, das ich mit dem folgenden Befehl gelöst habe: rninit init TaxiApp --source [email protected];
quelle
Mein Terminal zeigt dieselbe Meldung an, da einige Simulatoren gelöscht wurden, die ich in Xcode nicht verwende.
Wenn Sie
react-native run-ios
ohne bestimmte Parameter ausführen , führt react-native den Standardsimulator aus, in meinem Fall iPhone 6 mit iOS 10.3.1, und ich habe diesen Simulator zufällig gelöscht.Hier kommen meine Fehlermeldungen:
. . .
Um diese zu entfernen, öffnen Sie Ihren Xcode und suchen Sie nach verfügbaren Simulatoren (wie im aufgelisteten Terminal) und führen Sie sie aus
react-native run-ios --simulator="your device name"
Für meinen Fall renne ich
react-native run-ios --simulator="iPhone 7"
, das Problem gelöst.quelle
Nachdem ich einige Monate lang alle Antworten ausprobiert habe, aktualisiere ich endlich mein Betriebssystem auf Sierra, aktualisiere XCode auf die neueste Version und damit verschwinden alle Fehler. Hoffe das könnte einigen Leuten da draußen helfen!
quelle
Hinzufügen, es funktioniert für mich, wenn nichts oben behebt:
npm i -g react-native-git-upgrade && react-native-git-upgrade
npm i -g react-native-cli
nvm install --lts
undnvm install-latest-npm
npm install
und fortreact-native run-ios
und umarmen Sie mich :-)Hier funktioniert es endlich.
quelle
Die Verwendung dieser Version funktioniert für mich mit xcode 10.1
quelle
Alle diese Lösungsvorschläge haben bei mir nicht funktioniert. Ich habe gerade ein rn 0.58.5 Projekt erstellt. Und verglichen mit meinem Projekt. Ich habe gesehen, es gibt keine
JavaScriptCore.framework
unter demBuild Phasess
>Link Binary With Libraries
. Nach dem Ziehen und Ablegen von JavaScriptCore war der reaktionsnative Run-iOS-Build erfolgreich.JavaScriptCore.framework
Ort:Macintosh HD ▸ Applications ▸ Xcode ▸ Contents ▸ Developer ▸ Platforms ▸ iPhoneOS.platform ▸ Developer ▸ SDKs ▸ iPhoneOS.sdk ▸ System ▸ Library ▸ Frameworks
quelle
Für mich waren es ios Abhängigkeiten, die von Cocoapods verwaltet wurden.
Musste das machen:
Das hat bei mir funktioniert
https://shift.infinite.red/beginner-s-guide-to-using-cocoapods-with-react-native-46cb4d372995
PS: Ich habe versucht, die Arbeit von jemand anderem herauszufinden
quelle
pod init
und Sie haben gültige Podfile. Bitte nicht ablehnen Wenn Sie nicht genug Wissen haben, um Ihren Ansprüchen entgegenzutreten. Da es, wie ich bereits erwähnte, das Projekt eines anderen war, hatte ich bereits die PodFile. Ich habe das Pod-Setup für Leute wie Sie komplett entfernt.Die Fehlermeldung ähnlich wie
The domain/default pair of (../ios/Runner/Info, CFBundleIdentifier) does not exist
Bedeutet, dass Xcode denkt, dass Sie
plist
habeninvalid format content
.Sie müssen den Inhalt der
Info.plist
Datei einfügen, um herauszufinden, was mit dieser Datei nicht stimmt.Ein mögliches Problem ist, dass diese
<key>
s und<values>
s (<array>
s,<string>
s oder<bool>
s) nicht richtig gepaart sind. Beispielsweise:Sie müssen nur das bewegen
key
und sichvalue
versammelnquelle
Diese Arbeit für mich Klicken Sie in Ihrem Navigator auf das RCTWebSocket-Projekt und entfernen Sie die Flags unter Build-Einstellungen> Benutzerdefinierte Compiler-Flags
quelle
Ich habe herausgefunden, wie Sie das Problem lösen können: Verwenden Sie KEINEN Speicherplatz in Ihrem Projektpfad! 🎉 😄
quelle
Das hat bei mir funktioniert. Befolgen Sie die Schritte https://facebook.github.io/react-native/docs/getting-started.html (Erstellen von Projekten mit nativem Code).
Laden Sie das Boost-Node-Modul von herunter, bevor Sie den Befehl react-native run-ios ausführen https://sourceforge.net/projects/boost/files/boost/1.63.0/ und ersetzen Sie node_modules / react-native / Drittanbieter / boost_1_63_0
Führen Sie nun den Befehl react-native run-ios aus
quelle
Wenn Sie
npm install
Befehl ausführen, einige Zeit Internet Problem Problem, Dateien innode_modules\react-native\third-party
nicht ordnungsgemäß heruntergeladen. Überprüfen Sie daher, ob diese ordnungsgemäß heruntergeladen wurden oder nicht. Wenn nein, entfernen Sie bitte node_modules und installieren Sie sie erneutFühren Sie dann den
react-native run-ios
Befehl ausquelle
Der Hauptgrund ist, dass die Bereitstellung des Ports nicht kostenlos ist. Entweder starten Sie das Gerät neu und lassen alle Ports frei, andernfalls führen
$ lsof -i :8081
Sie den Prozess aus, der Port 8081 belegt hat. Beenden Sie den Prozess, der Port 8081 verwendet, indem Sie ihn ausführen$ kill -9 {process_which_is_running_under_8081}
quelle