2015-07-21 15 views
7

dachte, ich würde eine vollständige Frage schreiben/beantworten hier auf die bekannten Fehler:Upgrade auf Xcode 7 erstellt „aktuelle Version Erklärung fehlt“ Warnung auf Coredata Modell

Wenn zu Xcode Upgrade 7 (stable/beta) von einem vorherige Version, Ihr Build gibt Ihnen plötzlich eine neue Warnung: "Fehlende aktuelle Version Deklaration" für Ihre CoreData-Modell-Datei.

Das Schlimmste von allem, Doppelklick auf diese Warnung geht nirgends, & gibt es keine offensichtlichen Hinweise innerhalb Xcode als die Auflösung. Wie lösen Sie dieses Problem?

Antwort

7

Während in der Menüleiste in Xcode Core Data Modelleditor, Editor auswählen -> Add Modell Version.

enter image description here

Dann in der version name Sie frei geben, was Sie möchten, können Sie einfach Ihre Modellnamen eingeben. (Überprüft auf Xcode 7 Beta 4)

(Diese in der Schöpfung .xccurrentversion führen in Ihrem Datenmodell Bündel)

+0

Dies scheint viel besser - Ich habe vor kurzem auch auf 7 Beta 4 aktualisiert, kann jemand bestätigen, dass diese Option nicht existiert/das Problem in Xcode 7 Beta 3 und darunter zu lösen? – Sitric

+0

das löst das Problem mit 7 beta 4 für mich, manuelle Erstellung der Datei funktionierte nicht –

+0

Dies sollte die akzeptierte Antwort sein! –

10

Hinweis: Dieser auf Xcode 6.4 & Xcode 7 Beta 3 getestet wurde - wie von Xcode 7 Beta 4 scheint eine integrierte Lösung zu sein, und die Datei manuell funktioniert nicht mehr zu schaffen - siehe akzeptierte Antwort

Öffnen Sie Terminal und in Ihr Projektverzeichnis & Modelldatei navigieren - Ihr Befehl wie folgt aussehen sollte:

alle
cd /Users/YOU/Documents/MyProject/MyProject/MyDataModel.xcdatamodeld 

Nun Liste Inhalt Ihres Datenmodell-Verzeichnis:

ls -la 

Wenn die Datei ".xccurrentversion" nicht angezeigt wird, muss sie erstellt werden.

nano .xccurrentversion 

Kopieren/Einfügen ist die benötigte XML für die Modellversion:

<?xml version="1.0" encoding="UTF-8"?> 
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd"> 
<plist version="1.0"> 
<dict> 
    <key>_XCCurrentVersionName</key> 
    <string>YOURDATAMODELNAME.xcdatamodel</string> 
</dict> 
</plist> 

ersetzen YOURDATAMODELNAME mit dem Namen des Datenmodells Verzeichnis, abzüglich der Erweiterung (zB MyDataModel.xcdatamodeld -> MyDataModel).

Nun, wahrscheinlich müssen Sie die Berechtigungen für die Datei beheben:

chmod 775 .xccurrentversion 

.. was ausreichend ist.

Reinigen Sie das Projekt, Xcode neu starten, Wiederaufbau - Warnung sollte weggehen.

Weitgehend aus diesem Thread, mit etwas mehr Spezifität zusammengestellt + Berechtigungen beheben: https://forums.developer.apple.com/thread/8861

+0

nur eine Klarstellung für diejenigen, den Terminal nicht so viel nutzen. Wenn Sie den Befehl 'nano' erhalten und nachdem Sie den obigen modifizierten Code eingefügt haben, um YOURDATAMODELNAME widerzuspiegeln, drücken Sie STRG + E, dann Y und dann return, um die neu erstellte Datei zu speichern. Führen Sie anschließend den Befehl fixes Berechtigungen aus. –

Verwandte Themen