Apache Cordova lança erro de sintaxe ao adicionar plataforma

1

Estou tentando começar com o Ionic Framework e uma das etapas é instalar o Cordova.

sudo npm install -g cordova

O que funciona bem. Então eu tenho que adicionar as plataformas iOS e Android, mas ao tentar obter erros:

iOS:

benedict@prometheus:/var/www/ionic/hello$ sudo cordova platform add ios
Creating ios project...
/home/benedict/.cordova/lib/ios/cordova/3.4.0/bin/create: 33: /home/benedict/.cordova/lib/ios/cordova/3.4.0/bin/create: Syntax error: "(" unexpected
Error: /home/benedict/.cordova/lib/ios/cordova/3.4.0/bin/create: Command failed with exit code 2
    at ChildProcess.whenDone (/usr/lib/node_modules/cordova/src/superspawn.js:112:23)
    at ChildProcess.EventEmitter.emit (events.js:98:17)
    at maybeClose (child_process.js:743:16)
    at Process.ChildProcess._handle.onexit (child_process.js:810:5)

Android:

benedict@prometheus:/var/www/ionic/hello$ sudo cordova platform add android
Creating android project...

/home/benedict/.cordova/lib/android/cordova/3.4.0/bin/node_modules/q/q.js:126
                    throw e;
                          ^
Error: An error occurred while listing Android targets
    at /home/benedict/.cordova/lib/android/cordova/3.4.0/bin/lib/check_reqs.js:87:29
    at _rejected (/home/benedict/.cordova/lib/android/cordova/3.4.0/bin/node_modules/q/q.js:808:24)
    at /home/benedict/.cordova/lib/android/cordova/3.4.0/bin/node_modules/q/q.js:834:30
    at Promise.when (/home/benedict/.cordova/lib/android/cordova/3.4.0/bin/node_modules/q/q.js:1079:31)
    at Promise.promise.promiseDispatch (/home/benedict/.cordova/lib/android/cordova/3.4.0/bin/node_modules/q/q.js:752:41)
    at /home/benedict/.cordova/lib/android/cordova/3.4.0/bin/node_modules/q/q.js:574:44
    at flush (/home/benedict/.cordova/lib/android/cordova/3.4.0/bin/node_modules/q/q.js:108:17)
    at process._tickCallback (node.js:415:13)
Error: /home/benedict/.cordova/lib/android/cordova/3.4.0/bin/create: Command failed with exit code 8
    at ChildProcess.whenDone (/usr/lib/node_modules/cordova/src/superspawn.js:112:23)
    at ChildProcess.EventEmitter.emit (events.js:98:17)
    at maybeClose (child_process.js:743:16)
    at Process.ChildProcess._handle.onexit (child_process.js:810:5)

Eu tentei reinstalar Cordova, mas sem sucesso. Alguma ideia do problema?

    
por Benedict Lewis 02.03.2014 / 13:04

1 resposta

1

Não tenho certeza sobre o erro ios (isso é suportado no linux? - não está na lista de plataformas disponíveis quando você faz uma "lista de plataformas cordova"). Provavelmente precisa de instalação adicional e um certificado de desenvolvimento da Apple.

Quanto ao erro do Android, você deve conseguir corrigir isso:

Verifique se a sua instalação ant está respondendo a "ant -version".

Dê uma olhada nesta resposta para configurar os caminhos necessários no Linux e verifique todos os seus caminhos com um explorador de arquivos: link

Certifique-se de fazer o logout / login para aplicar os caminhos.

Verifique também se o seu caminho é o que você acha que é com um "echo $ PATH".

    
por 02.03.2014 / 18:13