iphone - Erstellen mit xcodebuild Zeitüberschreitung beim Warten auf<IDEWorkspace, 0x2004cebc0>/"runContextManager.runContexts"




osx-snow-leopard (2)

Ich stelle mein iPhone-Projekt so ein, dass es mit Hudson läuft, mein Build-Skript funktioniert lokal einwandfrei, aber wenn ich den folgenden Befehl auf meinem Snow Leopard Server-Mac ausführte

xcodebuild -sdk iphoneos4.3 -workspace Moments.xcworkspace/ -scheme Moments -configuration DistributionTest

Ich erhalte die folgenden Fehlermeldungen.

Erstellen Sie Einstellungen über die Befehlszeile: SDKROOT = iphoneos4.3

2011-05-11 10: 32: 17.729 xcodebuild [4151: 903] WARNUNG: Zeitüberschreitung beim Warten auf /"runContextManager.runContexts "(10.010780 Sekunden abgelaufen) xcodebuild: Fehler: Der Arbeitsbereich 'Moments.xcworkspace /' enthält kein Schema "Momente" genannt.

Was ist die Zeitüberschreitung ?! Und warum kann es das Schema Moments nicht finden, wenn es definitiv da ist. Wenn ich den Arbeitsbereich in xcode auf dem Build-Server öffne, kann ich das Schema sehen.


Leider hängt xcodebuild von einigen Dateien ab, die vom XCode generiert werden. Um dies zu beheben, können Sie sich als Ihr Hudson-Benutzer anmelden und die XCode-Benutzeroberfläche einmal ausführen. Dadurch werden die erforderlichen Dateien erstellt.

Ich versuche derzeit, dies zu umgehen, aber die benötigten Dateien werden vor dem Erstellen in die Quellstruktur kopiert.

Wenn Sie xcodebuild ausführen und XCode im Hintergrund ausgeführt wird, kontaktiert xcodebuild XCode, um die erforderlichen Daten abzurufen. Da XCode nicht läuft, wird das Timeout angezeigt.


Schemas werden standardmäßig nicht von Benutzern (und Ihrem Build-Server) gemeinsam genutzt. Wie David erwähnt , können Sie sie teilen, aber Sie können stattdessen auch einfach die Ziele aufrufen, die geteilt werden.

Also statt

xcodebuild -scheme Foobar

es würde sein

xcodebuild -target Foobar

da Schemata normalerweise wie das Ziel benannt werden.





xcodebuild