Wenn ich also versuche, meinen Code aus dem xcode-Terminal zu erstellen, schlägt er fehl und gibt mir eine Fehlermeldung, dass die Datei "Cordova / CDVViewController.h" nicht gefunden wurde, aber wenn ich diese aus xcode erstelle, ist das gut.
In meinem Xcode habe ich das ganze Unterverzeichnis von Cordova gemacht Aktualisieren Sie Cordova . Auch wenn ich ran liste. Das sehe ich unten:
xcodebuild -list
Informationen zum Projekt "myProject":
%Vor%Umgebung: Xcode5, OS 10.8.5
Gibt es etwas, das mir fehlt? Der Grund, warum ich das tue, weil ich versuche, dies durch Jenkins zu tun. Ich dachte, es wäre ein Jenkins-Problem, aber dann habe ich es bis zum xcode-Terminal geschafft, ohne die CordovaLib zu sehen.
Ich habe zu viel Zeit damit verbracht, die Lösung dafür herauszufinden, also ist es eine Schande, sie nicht zu teilen. Es gibt viele mögliche Gründe, warum dieses Problem auftritt, aber wenn Sie das Gefühl haben, dass Sie alles richtig in der CordovaLib eingerichtet haben (wie ich!) Und immer noch das gleiche Problem hat. Dies kann eine der Ursachen sein. Was passiert ist, wenn ich das
rannte %Vor%Es baut erfolgreich auf, aber wenn Sie "-scheme" nicht angeben, wird es standardmäßig fehlschlagen, indem es "Release" verwendet. Die Parameter des Schemas steuern, welche Ziele erstellt werden und wie sie erstellt werden, myProject-Schema enthält den Unterordner und den Verweis auf Cordovalib.
Wenn Sie jetzt zu Jenkins wechseln, müssen Sie das Schema im Textfeld "Xcode Schema File" im Abschnitt Erweiterte Xcode-Buildoptionen des XCode-Plugins angeben.
Mein Setup ist Xcode als mein Slave, aber das kann immer noch auf jede Xcode- und Jenkins-Kombination zutreffen, die du hast - also als ich das
ausgeführt habe %Vor%Ich erhalte die Nachricht die folgende Nachricht:
%Vor%Die Lösung dafür ist, dass Sie in Ihrem xcode-Projekt zu Product | Scheme | Manage Scheme wechseln und "Shared" für beide Projekte myProject und CordovaLib aktivieren. Kompilieren. Check-in (weil ich das von TFS ergreife). Rufen Sie erneut den Befehl "-list" auf, und Sie sehen die Schemas, die Sie gerade geteilt haben.
Hoffe, das hilft!
Vielen Dank! Das Hinzufügen der Parameter "-scheme" und "-configuration" behebt das Problem für mich.
Wenn es jemand anderem helfen kann, hier ist die vollständige Befehlszeile, die ich verwendet habe:
xcodebuild -schema MyProject-Konfiguration "Release" - Suche i386 -sdk iphonesimulator7.1
Ich habe es verwendet, um einen ios-Simulator-Build zu erstellen, um eine Phonegap / Cordova-Anwendung an den Facebook Review