Ich habe kürzlich an meiner Anwendung gearbeitet, die im Abschnitt info.plist herumgespielt hat, und seitdem läuft meine Anwendung nicht mehr auf meinem Testgerät:
die Datei 'project.pch' wurde geändert, seit der vorkompilierte Header erstellt wurde
Zu beachten ist, dass die App im Simulator einwandfrei läuft.
Edit: Jetzt bekomme ich diesen Fehler anstelle des anderen:
Keine solche Datei oder kein solches Verzeichnis
Wie kann ich die Datei info.plist neu generieren?
Sie könnten eine Tiefenreinigung versuchen (nicht dasselbe wie bei Produkt> Reinigen) - Option+Command+Shift+K
Hinweis: Dies bedeutet, dass das den Erstellungsordner bereinigt (durch Drücken von Option + Produkt -> Ordner reinigen)
~/Library/Developer/Xcode/DerivedData/
ModuleCache
und leeren Sie den Papierkorb.In meinem Fall hatte die Fehlermeldung einen kleinen Hinweis:
hinweis: Löschen Sie nach dem Ändern der Systemheader den Modulcache unter '~/Library/Developer/Xcode/DerivedData/ModuleCache/5CYAJ91AZCB7'.
Ich habe es versucht und es hat funktioniert.
Durch einfaches Berühren der PCH-Datei des Projekts wurde dieses Problem für mich gelöst:
touch Test.pch
Arbeitete für mich in Xcode6 GM und iOS 8.0.
Wenn die .h-Datei einer mit Xcode bereitgestellten Bibliothek geändert wird (auch ein Leerzeichen), kann dieser Fehler auftreten.
Im Folgenden wird möglicherweise versucht, dieses Problem zu beheben
In, Project -> Build Settings , ändern Sie Prefix Header vorkompilieren zu NEIN
OR
Ich hatte dies ständig seit dem Upgrade von Xcode 4.6 auf Xcode 5 mit iOS-Projekten, wenn Befehlszeilen-Build (xcodebuild) verwendet wurde.
Was für mich funktioniert hat, ist, dies als Kommandozeilen-Build-Befehl zu verwenden:
xcodebuild -project path/to/my.xcodeproj -configuration Debug clean build
Vorher habe ich versucht:
Unter Xcode 5.0.2, Mavericks, iOS7 hat keines der oben genannten Verfahren für mich funktioniert.
Beachten Sie, dass das Problem bei der Verwendung der Xcode-GUI nicht aufgetreten ist.
Ich gehe einfach in das Verzeichnis "/ $ HOME/Library/Developer/Xcode/DerivedData /" und lösche dort alles
Klicken Sie einfach im Menü auf Produkt und wählen Sie Reinigen
Produkt> Reinigen
Hat gut funktioniert für mich.
rm -rf ~/Library/Developer/Xcode/DerivedData/
Wenn Sie AppCode verwenden, können Sie versuchen, Inhalte zu entfernen aus:/Users/[Username]/Library/Caches/appCode 30/DerivedData /
Arbeitete für mich :)
Ich habe das gleiche Problem. Mein Fehler sagte, wie ich den Cache in der folgenden Position löschen muss,
Benutzer/Benutzername/Bibliothek/Entwickler/Xcode/DerivedData/ModuleCache/3FGETKFCU0N0W
3FGETKFCU0N0W
war ein Ordner, als ich ihn löschte und dann das Projekt bereinigte. Dann verschwindet der Fehler.
Wenn Sie dies beim Wechseln zwischen Git-Zweigen feststellen, fügen Sie diesen Post-Checkout-Hook hinzu, der Ihr Projekt jedes Mal bereinigt, wenn Sie den Zweig wechseln.
!/bin/sh
xcodebuild clean -configuration Debug
Speichern Sie als .git/hooks/post-checkout
Relativ zu Ihrem Projektstamm und vergessen Sie nicht chmod +x .git/hooks/post-checkout
Öffnen Sie einfach das Terminal und löschen Sie die generierte .pcm-Datei (ab Xcode 6)
rm <path-to-pcm-file>
Für mich tritt dieses Problem nur in der Beta-Version von Xcode 6 auf. Daher wechsle ich wieder zu Xcode 5 und das Problem ist nun behoben.
Ich habe alle hier von allen Benutzern vorgeschlagenen Schritte ausprobiert, aber niemand hat für mich gearbeitet.
Wenn Sie also beide Versionen von Xcode haben und nur in Xcode 6 Beta Probleme haben, dann wechseln Sie zu Xcode 5 und bereinigen Sie das Projekt, das Problem ist gelöst.
Die einzige Lösung, die dort für mich funktionierte, war das Ausführen des folgenden Befehls:
Sudo rm -R /var/folders/
Aber das bereitete mir viele Probleme in OS X.
Ich dachte, weil/var/folders/für temporäre Dateien gedacht ist, sollte es in Ordnung sein, nur irgendetwas darin zu leeren. Aber ich habe mich geirrt, siehe folgenden Beitrag: link
Und das von Ihnen beschriebene Problem trat jedes Mal auf, wenn ich versuchte, mein Xcode-Projekt zu erstellen - ich erstelle es über die CLI von Jenkins aus.
Das heißt, ich konnte den Befehl rm nicht jedes Mal ausführen. Also fand ich einige Inspirationen und schrieb das folgende Ruby Skript, das mein Problem löste:
#!/usr/bin/env Ruby
require 'fileutils'
cache = Dir.glob("/var/folders/**/com.Apple.DeveloperTools*")
FileUtils.rm_rf(cache)
Ich hoffe es wäre jemandem behilflich.
Wenn Sie mit xcodebuild auf der Befehlszeile aufbauen, entfernen Sie die an den Befehl übergebene Option '-parallelizeTargets'. Das hat das Problem für mich behoben
Ich habe diese nacheinander ausprobiert, konnte mein Projekt jedoch nicht erstellen und ausführen. Also änderte ich Präfix-Header vorkompilieren zu NO wie von @Abhilash Gopal erwähnt, dann setzte ich den Simulator zurück, löschte die abgeleiteten Daten, entfernte die entsprechende .pcm-Datei (In meinem Fall war es die UIImage.h aus dem UIKit-Framework, entfernte also die UIKit.pcm). Dann bereinigte ich das Projekt und konnte es erst dann erfolgreich erstellen. In früheren Versionen von Xcode waren diese Dateien grundsätzlich gesperrt und durften nicht bearbeitet werden. Aber das ist jetzt nicht der Fall. Hoffe, das hilft jemandem, der in der gleichen Situation ist.
Das Löschen von project.xcworkspace
Hat einen Trick für mich gemacht.
project.xcworkspace
Ist ein Verzeichnis, das das Schema des aktuellen Status des Xcode-Arbeitsbereichs beschreibt. Bei jedem Start von Xcode wird project.xcworkspace
Neu generiert, falls noch nicht vorhanden.
Um project.xcworkspace
Zu löschen:
yourProject.xcodeproj
Show Package Content