Ich kann kein Projekt erstellen, das CocoaPods verwendet. Ich erhalte folgende Fehler:
diff: /../Podfile.lock: No such file or directory
diff: Manifest.lock: No such file or directory error:
The sandbox is not in sync with the Podfile.lock. Run 'pod install' or update your CocoaPods installation.`
$ pod install
scheint gut zu funktionieren und fügt Pods
meinem Arbeitsbereich ein Projekt hinzu . Ich habe es versucht, $ pod update
aber das hilft nicht.
Es scheint, dass dies PODS_ROOT
nicht festgelegt wird.
Podfile:
platform :ios, '6.0'
workspace 'Example.xcworkspace'
xcodeproj 'example/Example.xcodeproj'
pod 'TestFlightSDK', '~> 1.3.0-beta.5'
pod 'TestFlightLogger', '~> 0.0.2'
pod 'CocoaLumberjack', '~> 1.6.2'
pod 'Reachability', '~> 3.1.0'
pod 'SBJson', '~> 3.2'
pod 'MKMapViewZoom', '~> 1.0.0'
objective-c
cocoa-touch
cocoapods
build-error
Ablenkung
quelle
quelle
[!] From now on use MyProject.xcworkspace.
nicht te alt `.xcodeproj 'Antworten:
Ich hatte ein ähnliches Problem, als ich größere Änderungen an meinem Podfile vorgenommen habe. Meine Lösung bestand darin, die Arbeitsbereichsdatei zu entfernen und
pod install
erneut auszuführen :quelle
sudo gem install cocoapods
gem install cocoapods
ist noch besser. Die meiste Zeitsudo
sollte mit Edelsteinen nicht notwendig sein.gem update cocoapods
TLDR: Dies ist höchstwahrscheinlich ein Fehler bei Xcode. Das Schließen und erneute Öffnen des Projekts ist normalerweise die einfachste Lösung. Vorausgesetzt, alles andere ist richtig konfiguriert .
Ich erhalte gelegentlich den gleichen Fehler, wenn ich das
Pods
Verzeichnis lösche und dann ausführepod install
.In den Projektinformationen erscheint alles korrekt:
Wenn ich jedoch zu den benutzerdefinierten Build-Einstellungen des Ziels gehe, fehlt der Eintrag PODS_ROOT entweder vollständig oder ist für eine oder mehrere Konfigurationen leer. Was beim Erstellen den folgenden Fehler verursacht:
Die einfachste Lösung besteht darin, das Projekt in Xcode zu schließen und erneut zu öffnen .
Wenn Sie zu den Build-Einstellungen des Ziels gehen und nach Alle filtern , wird der
PODS_ROOT
Eintrag jetzt ohne Fehler angezeigt:Es sollte jetzt fehlerfrei erstellt werden.
Hinweis: Sogar das offizielle AFNetworking iOS-Beispiel von Cocoa Pods weist dieses Problem auf, was mich zu der Annahme veranlasst, dass es sich um einen Fehler mit Xcode handelt.
Eine alternative Lösung besteht darin, die Konfiguration manuell auf
None
und dann auf den ursprünglichen Wert zurückzusetzen:quelle
Gehen Sie zu den Zielen
Build Settings
und stellen Sie sicher, dass der Wert vonPODS_ROOT
gleich${SRCROOT}/Pods
im Abschnitt "Benutzerdefiniert" ist.quelle
PODS_ROOT
mein Ziel mit diesem Pfad und Viola hinzufügen (ich habe es auchheader search paths
als "$ (PODS_ROOT)" rekursivUpdate: a
podfile.lock
ist erforderlich und sollte von der Versionskontrolle nicht ignoriert werden. Es verfolgt die Versionen der Bibliotheken, die bei einer bestimmten Pod-Installation installiert wurden. (Es ähnelt gemfile.lock und composer.lock für Rails und PHP-Abhängigkeitsmanagement). Um mehr zu erfahren, lesen Sie bitte die Dokumente . Kredit geht an cbowns .In meinem Fall habe ich für mein Projekt eine Hausreinigung durchgeführt (dh die Integrationstests als Git-Submodul verzweigt, doppelte Dateien entfernt usw.) und das Endergebnis auf ein Git-Remote-Repo übertragen. Alle Kunden, die mein Repo geklont haben, litten unter dem oben genannten Fehler. Inspiriert von Hlung's Kommentar oben, stellte ich fest, dass es einige baumelnde Pod-Skripte gab, die versuchten, gegen einige nicht existierende Dateien zu laufen. Also ging ich zu meiner Zielerstellungsphase und löschte alle verbleibenden Phasen, die irgendetwas mit Kakaofrüchten zu tun hatten (und Hlung's Kommentar, den er zum Löschen vorschlägt,
Copy Pods Manifest.lock
undcopy pod resources
.. meine wurden anders benannt, vielleicht b / c ich benutze Xcode 5 .. die Punkt ist, diese baumelnden Bauphasen zu löschen) ..quelle
Podfile.lock
: Lesen Sie die Dokumentation von Cocoapods zum Thema "Arbeiten mit Teams", um weitere Informationen zu erhalten.Es scheint also, dass CocoaPods die Konfigurationen für mein Projekt nicht festgelegt hat. Sie müssen auf dem basieren,
Pods.xcconfig
was in der gefunden wirdPods/Target Support Files/Pods
. Damit dies funktioniert, musste ich Folgendes tun:Ich hatte dann einen anderen Build-Fehler, der möglicherweise verwandt war oder nicht. Der Pfad zu dem im definierten Shell-Skript
Copy Pods Resources
war falsch.Falsch gelöst. Es schien, dass SRCROOT ein zusätzliches Verzeichnis hinzufügte, das nicht im Pfad vorhanden war. Also habe ich den Pfad zum Projektordner fest codiert.
Dadurch konnte ich bauen.
Warum fressen so viele Dinge, die Ihnen Zeit sparen sollen, sie auf?
Hinweis: Weitere Informationen finden Sie in der Antwort von @ abood.
quelle
Copy Pods Manifest.lock
undCopy Pods Resources
Phasen. Und entfernen Sie auchlibPods.a
in Link Binary mit Bibliotheken..gitignore
Dateien sind so konfiguriert, dass sie ignoriert werden .. und das zu Recht) .. diese Datei sollte nicht Wenn du es als Antwort aufschreibst, würde ich dir eine +1 geben!Ich habe ein ähnliches Problem, das hat funktioniert:
quelle
Ich habe das gleiche Problem durch die folgenden Schritte beseitigt:
Xcode->Product->Clean Build Folder
(Halten Sie die Alt-Taste am Produkt gedrückt , um es anzuzeigen.)Xcode->Window->Organizer
Sie dieProjects
Registerkarte und wählen Sie sie aus . Suchen Sie dann Ihr Projekt und löschen Siederived data
das Projekt.quelle
Einfach wie folgt gelöst:
(sudo) gem install cocoapods
Pod installieren
reinigen und bauen
Es scheint, dass das Problem durch eines unserer Teammitglieder verursacht wurde, das eine neuere Cocoapods-Edelsteininstallation hatte.
quelle
gem install cocoapods
und dannpod install
und fast alles andere in diesem Thread erwähnt ...quelle
Hatte das gleiche Problem mit /Pods/Pods-resources.sh: Keine solche Datei oder kein solches Verzeichnis, selbst nachdem Dateien usw., die sich auf Pods beziehen, entfernt wurden.
Sie haben es beseitigt, indem Sie zu target-> Build-Phasen gegangen sind und dann die Build-Phase "Copy Pod Resources" entfernt haben.
quelle
Ich hatte kürzlich das gleiche Problem. Ich habe jeden möglichen Rat ausprobiert, nichts außer diesem Plugin hat bei mir funktioniert:
https://github.com/kylef/cocoapods-deintegrate
Nach der Bereinigung der aktuellen Cocoapods-Integration müssen noch Podfile, Podfile.lock und der .xcworkspace gelöscht werden. Dann einfach nochmal installieren.
Ich hoffe ich werde jemandem dabei helfen.
quelle
Dieses Problem wurde gelöst.
quelle
Ich denke, es hat hier einen Fehler.
Für mich lösche ich
Pods
Ordner undPodfile.lock
mache daspod install
erneut, um das Problem zu lösen.Diese Nachricht wird ignoriert .. :(
quelle
Es war nicht sehr intuitiv. Ich ging zu den Einstellungen des Basisprojekts und codierte dann die Pfade zu pod.lock und pod.manifest unter Check Pods Manifest.lock fest, da sie sich tatsächlich in verschiedenen Ordnern befanden. Meine Pfade sahen also folgendermaßen aus:
quelle
Sie können Folgendes versuchen. Es wurde für mich behoben.
Die Plugins werden für Ihr Projekt aus den Cocoapods entfernt und frisch installiert.
quelle
In meinem Fall war dies ein Testziel, bei dem ich alle Pods aus meiner Poddatei entfernt habe (weil ich Pods hinzugefügt habe, die ich später erkannte, dass ich sie in diesem Ziel nicht benötigte). Keine der anderen Lösungen hier hat bei mir funktioniert.
Wechseln Sie in den Projekteinstellungen zur Registerkarte Build-Phasen für das Ziel, das Probleme verursacht.
Löschen Sie den Abschnitt "Pods-Manifest prüfen" und "Pods-Ressourcen kopieren".
Entfernen Sie in "Binär mit Bibliotheken verknüpfen" libPods-YourTarget.a
Erweitern Sie in Ihren Projekteinstellungen auf der Registerkarte "Info" die Option "Konfigurationen" und setzen Sie die Konfiguration für das Ziel für Debug und Release auf "Keine". (Dadurch werden einige fehlende Datei-Warnungen behoben.)
Löschen Sie die abgeleiteten Daten Ihres Projekts (Fenster> Projekte> Löschen [neben Ihrem Projekt) und starten Sie Xcode neu. Ziel erstellen / ausführen.
quelle
Das machte meinen Tag!
pod install
in Ihrem Projektordnerquelle
In meinem Fall war das Problem falsch. Lösung hier http://guides.cocoapods.org/using/troubleshooting.html
quelle
Ich hatte dieses Problem.
Ich habe das Problem behoben, indem ich den Pod vollständig gelöscht und erneut implementiert habe. Stellen Sie sicher, dass Sie "Copy Pods Resources" und "Check Pods Manifest.lock" aus "Build Phases" auf allen Zielen löschen, wie hier angegeben: Wie entferne ich CocoaPods aus einem Projekt?
quelle
Um diesen Fehler zu beseitigen, musste ich das
Pods
Verzeichnis löschen und diePodfile.lock
Datei löschen .quelle
In meinem Fall habe ich Podfile.lock & Manifest.lock in die Quellcodeverwaltung eingefügt, aber ich habe vergessen, Pods-Project.debug (release) .xcconfig-Dateien zur Quellcodeverwaltung hinzuzufügen (indem ich versehentlich * .xcconfig zu .gitignore hinzugefügt habe), dann habe ich habe die gleichen Kompilierungsfehler mit genau dem gleichen Grund, PODS_ROOT wird nicht gesetzt.
Wenn das Ziel also darin besteht, dass das Projekt nach dem Klonen des Repos sofort erstellt und ausgeführt werden kann, ohne dass CocoaPods auf dem Computer installiert ist, fügen Sie entweder das gesamte Pods-Verzeichnis in der Quellcodeverwaltung hinzu oder fügen Sie Podfile.lock, Manifest.lock, die xcconfig-Dateien des Projekts und hinzu Pods xcconfig-Dateien zur Quellcodeverwaltung.
Ich habe die private .xcconfig , die die Build-Einstellungen mit der Standard-CocoaPods-Konfiguration zusammenführt, nicht in die Quellcodeverwaltung übernommen.
quelle
Nachdem ich Stunden damit verbracht hatte, die Lösung zu finden, gehe zu "Phasen erstellen" und dann zu "Pods Manifest.lock überprüfen". Aktivieren Sie "Skript nur bei Installation ausführen".
Dank mir später ;)
quelle
Ich hatte das gleiche Problem mit meinem IONIC- Projekt, ich habe vor allem Lösungen ausprobiert, aber kein Glück.
Wenn Sie immer noch das gleiche Problem haben, überprüfen Sie, ob die folgenden Wettereinstellungen vorhanden sind
Build Settings -> User-Defined settings
oder nicht1.
PODS_ROOT
2.PODS_PODFILE_DIR_PATH
Wenn nicht vorhanden, fügen Sie es hinzu,
Es wird das Problem lösen, Lösungslink
quelle
Ich habe mehrere Ziele erstellt, bevor ich Pods verwendet habe. Als ich später anfing, die anderen Ziele zu kompilieren, musste ich link_with mit der Liste der Ziele in meiner Poddatei hinzufügen.
quelle
Ich hatte das gleiche Problem. Nachdem ich meine letzten Schritte zurückverfolgt hatte, stellte ich fest, dass das Hinzufügen einer Zieldeklaration für ein neues Ziel, gefolgt von Ausführen,
pod install,
die Ursache des Problems war:Das Zurücksetzen meines Zweigs und das Bereinigen meines Projekts funktionierte nicht, da Cocoapods mindestens eine Datei geändert hat, die nicht der Quellcodeverwaltung unterliegt . Ich weiß das, weil das Problem nicht mehr bestand, nachdem ich den Remote-Zweig vor dem Hinzufügen des zusätzlichen Ziels auf ein Commit zurückgesetzt und das Repo erneut geklont hatte.
quelle
Wenn Sie ein watchOS-Ziel haben: Ich habe festgestellt, dass plötzlich Pods in der Watch- Erweiterung, aber nicht im Watch-Ziel selbst, die Dinge mit demselben Fehler kaputt gemacht haben. Die Lösung bestand darin, die Pods auch dem Überwachungsziel hinzuzufügen.
quelle
kann Ihnen helfen.
Siehe Pod-Installation schlägt mit Abbruch fehl - Neues Swift-Projekt .
quelle
Wenn Sie nach dem Erstellen von Podfile ein neues Ziel hinzugefügt haben, löschen Sie einfach Podfile, Podfile.lock, Pods-Ordner und Arbeitsbereich und starten Sie Pods -> und installieren Sie Ihre Pods
quelle
Nachdem ich das oben genannte versucht hatte, stellte ich fest, dass ich einen Fehler bekam
pod install
Dies verursachte den Fehler, da cocoapods die .xcconfig-Datei nicht zu meinem Projekt hinzufügte.
Um dies zu lösen, ging ich zur
Info
Registerkarte meines Projekts. Setzen Sie my Based on Configuration FileNone
für alle Schemata und Ziele auf. Dann lief es erneutpod install
Weitere Informationen finden Sie unter diesem Link. Cocoapods Warnung - CocoaPods hat die Basiskonfiguration Ihres Projekts nicht festgelegt, da für Ihr Projekt bereits ein benutzerdefinierter Konfigurationssatz festgelegt ist
quelle
In meinem Fall habe ich versehentlich einen unnötigen Punkt am Ende der Konfigurationsdatei eingegeben, der dieses seltsame Problem verursacht hat. Bitte stellen Sie sicher, dass Ihre Konfigurationsdatei keine Fehler enthält!
quelle