Ein Projekt, an dem ich seit 2 Monaten arbeite, hat ohne Grund aufgehört zu arbeiten, weil Xcode bei "Indexierung" hängen geblieben ist. Ich kann das Projekt nicht mehr erstellen. Wenn ich versuche zu bauen, friert Xcode ein und ich muss das Beenden erzwingen. Dies geschieht nur bei diesem Projekt.
Ich habe versucht, alle abgeleiteten Daten zu bereinigen, aber es hat nicht geholfen.
Ich benutze Xcode 4.5.2.
Irgendwelche Ideen?
Antworten:
Wenn Ihr Problem nicht behoben ist, ersetzen Sie die Datei durch Ihre Sicherungsdatei.
quelle
Das Nuking abgeleiteter Daten ist das erste, was Sie in allen Fällen von Xcode-Fehlverhalten versuchen sollten
quelle
Ich hatte genau dieses Problem, es wurde durch ein Array-Literal mit 20 Elementen verursacht. Musste zu anderer Syntax wechseln. Ziemlich dumm.
quelle
rm -rf ~/Library/Developer/Xcode/DerivedData
quelle
Ich hatte ein ähnliches Problem und stellte fest, dass ich versehentlich eine Klasse als eigene Unterklasse definiert habe. Ich habe keine Warnung oder Fehler dafür erhalten, aber die Kompilierung blieb hängen.
quelle
Bei Verwendung von Xcode 6 heißt es
Möglicherweise wird bereits eine Instanz von make ausgeführt. Beenden Sie den Prozess und die Indizierung wird fortgesetzt. Dumm, aber für mich gearbeitet.
quelle
Eine andere Sache zu versuchen, wenn Sie versuchen, Indexierungsprobleme zu lösen und Sie so weit unten auf der Seite sind!
Versuchen Sie, dieses Flag zu Ihren Build-Einstellungen hinzuzufügen.
-Xfrontend -warn-long-expression-type-checking=400
Es wird eine Warnung ausgelöst, wenn der Compiler lange braucht, um einen komplexen Ausdruck abzuleiten.
Dies kann zu einem Build-Fehler führen, der behoben wird, nachdem Sie die langsamen Ausdrücke gefunden und das Build-Flag entfernt haben.
quelle
Halten Sie alt> Produkt> Build-Ordner bereinigen gedrückt
quelle
Es ist ein Xcode-Fehler (Xcode 8.2.1) und ich habe Apple gemeldet, dass dies passieren wird, wenn Sie ein großes Wörterbuchliteral oder ein verschachteltes Wörterbuchliteral haben. Sie müssen Ihr Wörterbuch in kleinere Teile zerlegen und diese mit der Append-Methode hinzufügen, bis Apple den Fehler behoben hat.
quelle
com.apple.dt.SourceKitService
Prozess. Dann würde XCode wieder indizieren, anstatt zu stecken.quelle
com.apple.dt.SKAgent
in Xcode 10 genannt zu werden.Für mich hat das vollständige Schließen von Xcode und das anschließende Neustarten des Projekts funktioniert.
Dies ist nicht die Lösung für die ursprüngliche Frage, glaube ich nicht, aber es ist eine einfachere Sache, es zu versuchen, bevor Sie Dateien und Ordner usw. löschen. Dank dieser Antwort für die Idee.
quelle
Das ist mir passiert. Wenn Sie Cocoapods verwenden, gehen Sie wie folgt vor:
quelle
Ich hatte ein ähnliches Problem, bei dem Xcode viel Zeit mit der Indizierung verbrachte und häufig beim Erstellen des Projekts hängen blieb. Zu diesem Zeitpunkt musste ich Xcode zwangsweise beenden und neu starten. Es war sehr nervig.
Dann bemerkte ich im Projekt eine Warnung vor einer nicht ordnungsgemäßen Zuweisung
self
als Delegierter. Sicher genug, es gab ein fehlendes Protokoll in der Klassendeklaration. Beachten Sie, dass der Beispielcode des OP eine ähnliche Zuordnung enthält (obwohl anhand des Beispiels nicht zu erkennen ist, ob das richtige Protokoll deklariert ist):Nachdem diese Warnung behoben wurde (indem das implementierte Protokoll korrekt deklariert wurde), hörte Xcode auf, sich schlecht zu verhalten. Ich sollte auch beachten , dass das Projekt richtig war ausführen , da die Protokoll Methoden wurden implementiert. Es war nur so, dass Xcode nicht bestätigen konnte, dass das Protokoll tatsächlich von der Klasse implementiert werden sollte.
quelle
Nichts funktioniert für mich, mein Projekt zu groß ist (Verschmelzung Ziel
c
,c++
,swift
, undjava
Dateien mit j2obj). Ich habe die Xcode-Indizierung deaktiviert und monatelang ohne Code-Vervollständigung gearbeitet (und es ist ein Schmerz). Aber endlich habe ich eine Problemumgehung gefunden. Die Idee ist, Xcode weiterhin den Code zu indizieren, aber seine CPU-Auslastung mit einem externen Tool wie zu begrenzencputhrottle
.Zuerst müssen Sie cputhrottle im Terminal installieren
Begrenzen Sie dann den Xcode-Indizierungsprozess wie folgt (20 = 20%).
Ich habe meine "Lösung" hier mit Details zum Modus dargestellt: So verhindern Sie, dass Xcode beim Indizieren großer Projekte 100% der CPU verwendet
quelle
Hatte ein ähnliches Problem in Xcode 6.4. Der Fortschrittsbalken zeigte an, dass "Indizierung" "Angehalten" war. Es wurde versucht, project.xcworkspace zu löschen und dann abgeleitete Daten wie oben beschrieben zu löschen. Schien nicht zu helfen. Als ich feststellte, dass die obigen Beiträge auch das Beheben von Warnungen vorschlagen, und da ich dieses riesige Projekt mit 180 Warnungen geerbt hatte, sagte ich mir: "Was zum Teufel sieht das nach einem guten Tag aus, um Warnungen zu beheben?" Als ich eine halbe Stunde später Warnungen korrigierte, bemerkte ich, dass der Fortschrittsbalken "Indizierung" von 10% auf etwa 20% gestiegen war. Eine Stunde später war es bei 50%, dann noch eine Stunde bis 80%, dann nach einer weiteren halben Stunde war es geschafft! Fazit: Fügen Sie den obigen Vorschlägen "ein langes Mittagessen oder ein Nickerchen machen" hinzu.
quelle
Ich habe das gleiche Problem für Xcode 7.0 Beta festgestellt. In meinem Fall unterschieden sich die Werte für "Bereitstellungsprofil" und "Produktpaket-ID" von "Build-Einstellungen" zwischen PROJECT und TARGETS. Ich habe die gleichen Werte für sie eingestellt. Und ich habe auch die gleichen Werte für ZIELE von "appName" und "appNameTest" verwendet. Schließen Sie dann das Projekt und öffnen Sie es erneut. Das hat meinen Fall gelöst.
quelle
In meinem Fall hat das Löschen des abgeleiteten Datenverzeichnisses nicht geholfen. Anscheinend hatte ich eine Datei durch einen anderen Prozess gesperrt, da nach dem Schließen einiger Terminalfenster und Emacs und dem Beenden eines reaktionsnativen Packager-Prozesses alles gelöst war.
quelle
Für mich habe ich einen dummen Fehler gemacht. Ich schreibe eine Klasse wie diese:
Eine Klasse erbt sich selbst, die das Einfrieren verursacht. Es gibt keinen Hinweis von Xcode.
quelle
Ich habe dieses Problem in einigen Projekten mit Xcode 9.3.1 festgestellt. In meinem Fall ist das Problem auf einen schnellen Code zurückzuführen, den Xcode aus irgendeinem Grund nicht mag. Dieses Problem ist schwer zu lösen, da es schwierig ist zu finden, welche Datei das Problem verursacht.
Wenn ich dieses Problem habe, entferne ich einige Dateien aus dem Xcode-Projekt (Entfernen von Referenzen) und versuche zu testen, ob die Indizierung funktioniert. Mein Prozess dazu
In meinem Fall hatte ich eine Klassendefinition mit einer reaktiven Erweiterung in derselben Datei und aus irgendeinem Grund mag Xcode sie nicht. Ich habe die reaktive Erweiterung in eine andere Datei verschoben und jetzt funktioniert die Indizierung einwandfrei.
quelle
Stoppen Sie auch die App. Wenn eine andere Anwendung mit Ihrem xcode ausgeführt wird, stoppen Sie diese zuerst und Sie sollten die Indizierung fortsetzen.
quelle
Für mich war die Ursache, dass ich dieselbe Datei gleichzeitig im Primäreditor und im Assistenteneditor geöffnet habe . Nachdem ich Assistant Editor geschlossen hatte, kam es durch. (Xcode Version 7.2.1)
quelle
Schließen Sie Ihren Xcode, schließen Sie einen beliebigen Git-Client (Quellbaum oder Terminal), falls dieser geöffnet ist, und starten Sie Ihr Projekt schließlich neu.
quelle
Vor kurzem mit XCode 7.3.1 konfrontiert - für mich ist mir aufgefallen, dass die RAM-Auslastung von CleanMyMac3 zu 100% steigt. Das Problem wurde auf magische Weise behoben, nachdem ich meinen Computer neu gestartet hatte. Um ehrlich zu sein, hatte ich bereits die akzeptierte Antwort ausprobiert, daher sollten Sie dasselbe tun, bevor Sie neu starten, nur für den Fall :-)
quelle
Ich habe dies behoben, indem ich einfach die App von meinem Gerät gelöscht und neu erstellt habe.
quelle
Ich hatte das gleiche Problem in Swift 2.2
Es hatte mit einer generischen Funktion überladene Funktion zu tun
Alles, was ich tun musste, war eine der nicht verwendeten Überladungen zu entfernen
quelle
Mein Fall: Es war nicht die Datei project.xcworkspace, es war nicht der Ordner Derived Data.
Ich habe viel Zeit verschwendet. Schlimmer noch, keine Fehlermeldung. Keine Ahnung seitens Xcode. Absolut verloren.
Schließlich ist diese Funktion (mit mehr als 10 Parametern) verantwortlich.
Verrückt werden! Die Wahrheit ist, dass es besorgniserregend ist (weil es keinen Syntaxfehler oder irgendeinen Typ gibt)
quelle
Bei Indizierungsproblemen mit XCode 9.3 - Deinstallieren Sie den XCode und installieren Sie ihn erneut von Null. Funktioniert bei mir.
quelle
Dieses Problem ist mir passiert, als auf meiner Maschine kein Swap-Platz mehr vorhanden war. Mehrere Programme und Browser-Registerkarten wurden geschlossen, und der Build war nach 30 Minuten festgefahren. Ich habe nichts mit abgeleiteten Daten, gesperrten Dateien usw. zu tun.
quelle
Ich habe alle aufgelisteten Dinge ausprobiert, die Indizierung friert immer wieder ein. Dies hat mir geholfen: Wenn Ihre Indizierung einfriert und Sie einen oder mehrere schnelle Prozesse haben, die 99% Ihrer CPU verbrauchen, beenden Sie einfach diese schnelle (n) Aufgabe (n), warten Sie ein wenig, und der Fortschritt sollte sich bewegen. Es kann sich wiederholen, bis es fertig ist. In meinem Fall habe ich den Prozess sieben Mal abgebrochen, aber am Ende war die Indizierung abgeschlossen!
quelle
Hatte dieses Problem bei einem SwiftUI-Projekt. Es stellte sich heraus, dass eine meiner SwiftUI-Ansichten eine falsch deklarierte Variable hatte. Ich hatte:
wo ich brauchte:
Es gab keinen Compilerfehler, nur endlose Indizierung. Nachdem ich den Fehler behoben hatte, wurde das Projekt schnell erstellt.
quelle