2011-09-20 13 views
18

Voglio costruire un progetto Xcode dal Terminale e poi eseguirlo come richiesto, anche dal Terminale.Costruisci/esegui il progetto iOS Xcode dal Terminale

Ho cercato un modo per farlo per un po 'di tempo ma sono riuscito a trovare un metodo che funziona per iPhone Simulator, non per il dispositivo vero e proprio.

È possibile? La ragione per cui voglio un progetto Xcode su un dispositivo da Terminal è perché l'applicazione esegue una serie di test automatici e preferisco automatizzare questo processo usando uno script bash.

Grazie

risposta

11

per costruire il vostro progetto Xcode dalla riga di comando con un uso script bash:

/usr/bin/xcodebuild -target TargetYouWantToBuild -configuration Debug 

Guarda la pagina man di xcodebuild per ulteriori opzioni.

Facciamo questo per il nostro target suite di test unitari, e usiamo GHUnit.

Questa è la sezione del nostro script di build per l'esecuzione delle prove:

export GHUNIT_CLI=1 
export WRITE_JUNIT_XML=1 
clean 
echo "Building Bamboo GHUnit Tests..." 
OUTPUT=`/usr/bin/xcodebuild -target BambooAutomatedUnitTest -configuration Debug -sdk iphonesimulator4.3 build` 
RESULT=`echo "$OUTPUT" | grep "\\*\\* BUILD "` 
if [ "$RESULT" != "** BUILD SUCCEEDED **" ] 
then 
    echo "$OUTPUT" 
    exit 1 
fi 
echo "${RESULT}\n" 
+0

Diciamo che ho due Xcode (xcode4 e xcode5 nella stessa macchina) posso dire che uno uso (non il Xcode nelle applicazioni ma nel desktop) da linea di comando? È possibile? – MeM

+0

Forse ... Quando installi Xcode, metterà gli script in/usr/bin ma puoi eseguire qualsiasi versione di/usr/bin/xcodebuild, quindi potrebbe essere/Users/dave/Desktop/Xcode/xcodebuild – bandejapaisa

+0

sì l'ho provato, ma non trova il comando (sembra il modo di vedere il problema di Windows) Così ho posto la domanda e qualcuno ha risposto, la soluzione è usare il comando "xcode-select --switch" come spiegato in qui: http://stackoverflow.com/questions/22040472/building-xcode-project-in-terminal-choosing-another-xcode/22040547?noredirect=1#22040547 – MeM

Problemi correlati