Mogenerator und Xcode 4

8

Ich habe gerade mogenerator + xmo'd auf meiner Entwicklungsmaschine installiert und möchte damit anfangen, damit zu spielen. Die einzigen Anweisungen, die ich wirklich online finden konnte, waren von einem früheren SO-Post , und diese nicht arbeite nicht mit XCode 4 (oder zumindest ⌘ Ich lese keine Metadaten mehr und ich weiß nicht wie).

Damit alles funktioniert und funktioniert, müssen Sie xmod in den Kommentaren von .xcdatamodel hinzufügen (wo auch immer) und die Klassen werden ab diesem Zeitpunkt generiert / aktualisiert?

    
Bill Shiff 25.02.2011, 15:00
quelle

5 Antworten

7

Während ich versuchte, diese Antwort selbst zu finden, fand ich MOGENerator und Xcode 4 Integrationsleitfaden auf esenciadev.com. Diese Lösung ist keine Push-Button-Integration, aber es funktioniert. Der Link hat detaillierte Anweisungen, aber generell:

  1. Kopieren Sie die Shell-Skripte in Ihr Projekt
  2. Fügen Sie dem Ziel Build-Regeln hinzu, um die beiden Shell-Skripts auszuführen

Wenn Sie Ihr Projekt erstellen, führt das Skript MOGENerator für alle .xcdatamodel-Dateien in Ihrem Projektverzeichnis aus. Wenn das Skript nach dem Build neue Klassendateien generiert, müssen Sie sie manuell zu Ihrem Projekt hinzufügen. Nachfolgende Builds erinnern sich an vorhandene MO-generierte Dateien.

Vorbehalte:

  1. Die Build-Regel des Beispiels geht davon aus, dass Sie die Skripte in einen / scripts / file-Ordner innerhalb Ihres Projektverzeichnisses stellen. Wenn ich dieses Detail ignorierte (indem ich einen Ordner Projekt , aber keinen Ordner Datei erstellte), kam es zu einem Build-Fehler. Stellen Sie sicher, dass die Erstellungsregel auf den Dateispeicherort des Skripts zeigt.

  2. Das Skript verwendet das Argument --base-class . Sofern Ihre Modellklassen keine Unterklassen einer benutzerdefinierten Klasse (nicht NSManagedObject) sind, müssen Sie dieses Argument aus dem Skript löschen. Zum Beispiel,

%Vor%     
jluckyiv 26.07.2011 04:12
quelle
5

Nun, dass Xcode 4 veröffentlicht wurde Werfen Sie einen Blick auf die Seite Probleme für den mogenerator

    
Brent Priddy 11.03.2011 05:11
quelle
4

Nachdem ich Änderungen an meiner Modelldatei vorgenommen habe, starte ich den mogenerator einfach manuell vom Terminal aus. Mit Xcode 4 und ARC macht dies den Trick:

%Vor%

Vielleicht verwende ich irgendwann Build-Skripte, aber der Terminal-Ansatz ist zu einfach, um etwas zu vermasseln.

    
Neal Ehardt 04.05.2012 19:07
quelle
1

Ich habe ein Skript in den "Build Phases" gefunden, um zuverlässiger zu sein als die "Build Rules".

Wählen Sie unter "Build Phases" für Ihr Target die Schaltfläche "Run Script hinzufügen". Ziehen Sie das Skript run nach oben, damit es vor dem Kompilieren der Quellen ausgeführt wird.

Denken Sie daran, dass die eigentlichen Datenmodelldateien (.xcdatamodel) in einem Paket (.xcdatamodel) enthalten sind und Sie nur das neueste Datenmodell für Ihr Projekt kompilieren müssen.

Fügen Sie dem Skript Folgendes hinzu (ersetzen Sie den Text gegebenenfalls durch spitze Klammern)

%Vor%

Fügen Sie ggf. Optionen zu mogenerator hinzu. --base-class <your base class> und --template-var arc=true sind üblich.

    
Ryan 05.04.2012 05:29
quelle
0

Zufälliger Tipp. Wenn Sie Illegal Instruction erhalten: 4, wenn Sie mogenerator ausführen. Installieren Sie es über die Befehlszeile:

%Vor%     
Matt Hudson 05.06.2013 23:00
quelle

Tags und Links