'Ошибка: команда "android" не удалась "с использованием кордовы
Я пытаюсь добавить платформу Android на кордову. Я добавил и скачал самый последний SDK в Android SDK, мой путь: export PATH=${PATH}:/Users/xxx/Development/android-sdk-macosx/platform-tools:Users/xxx/Development/android-sdk-macosx/tools
, но я продолжаю получать следующую ошибку:
Error: The command "android" failed. Make sure you have the latest Android SDK installed, and the "android" command (inside the tools/ folder) is added to your path.
at /Users/xxx/.cordova/lib/android/cordova/3.5.0/bin/lib/check_reqs.js:85:29
at _rejected (/Users/xxx/.cordova/lib/android/cordova/3.5.0/bin/node_modules/q/q.js:808:24)
at /Users/xxx/.cordova/lib/android/cordova/3.5.0/bin/node_modules/q/q.js:834:30
at Promise.when (/Users/xxx/.cordova/lib/android/cordova/3.5.0/bin/node_modules/q/q.js:1079:31)
at Promise.promise.promiseDispatch (/Users/xxx/.cordova/lib/android/cordova/3.5.0/bin/node_modules/q/q.js:752:41)
at /Users/xxx/.cordova/lib/android/cordova/3.5.0/bin/node_modules/q/q.js:574:44
at flush (/Users/xxx/.cordova/lib/android/cordova/3.5.0/bin/node_modules/q/q.js:108:17)
at process._tickCallback (node.js:419:13)
Error: /Users/xxx/.cordova/lib/android/cordova/3.5.0/bin/create: Command failed with exit code 8
at ChildProcess.whenDone (/usr/local/lib/node_modules/cordova/node_modules/cordova-lib/src/cordova/superspawn.js:131:23)
at ChildProcess.emit (events.js:98:17)
at maybeClose (child_process.js:755:16)
at Process.ChildProcess._handle.onexit (child_process.js:822:5)
Что я делаю неправильно? Я искал ответы на все вопросы, но ничего не работает.
Спасибо заранее!
Ответы
Ответ 1
В случае Apache Cordova с Android Studio 0.8 для Mac OS X 10.9, если вы установили в папку по умолчанию/Приложения, запустите это в Terminal
export ANDROID_HOME="/Applications/Android Studio.app/sdk"
export ANDROID_TOOLS="/Applications/Android Studio.app/sdk/tools/"
export ANDROID_PLATFORM_TOOLS="/Applications/Android Studio.app/sdk/platform-tools/"
PATH=$PATH:$ANDROID_HOME:$ANDROID_TOOLS:$ANDROID_PLATFORM_TOOLS
Чтобы подтвердить, запустите эхо и получите
echo $PATH
/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/Applications/Android Studio.app/sdk:/Applications/Android Studio.app/sdk/tools/:/Applications/Android Studio.app/sdk/platform-tools/
Для Кордовы 3.6 это еще одна ошибка на новой Android Studio
Error: Please install Android target "android-19"
Чтобы решить эту проблему, откройте диспетчер SDK в среде IDE и загрузите указанную версию Android (android-19)
Ответ 2
команда android
является частью пакета инструментов sroid sroid. Оба android
и adb
используются инструментами Кордовы для работы с их магией, и оба должны быть вставлены на путь.
Они расположены в следующих каталогах:
path/to/android/sdk/tools
path/to/android/sdk/platform-tools
Я не знаю, на какой ОС вы развиваетесь. Процесс изменения пути отличается от окон и систем на основе UNIX.
добавить к пути в unix-подобных системах
В моей системе (OSX) это делается путем добавления следующих строк в .bash_profile
:
PATH=$PATH:/Users/lorenzo/dev/sdks/adt-bundle/sdk/tools
PATH=$PATH:/Users/lorenzo/dev/sdks/adt-bundle/sdk/platform-tools
это также можно сделать в одной строке:
PATH=$PATH:/Users/lorenzo/dev/sdks/adt-bundle/sdk/tools:/Users/lorenzo/dev/sdks/adt-bundle/sdk/platform-tools
это добавляет строки пути к глобальной переменной PATH. В unix разделитель путей имеет значение::
добавить к пути в windows
в том же процессе, вот официальные документы: http://msdn.microsoft.com/en-us/library/windows/desktop/ms682653%28v=vs.85%29.aspx
дополнительное чтение и следующие шаги
Вы можете посмотреть руководство по началу работы с Cordova Android, в котором подробно описано, как добавить необходимые компоненты к вашему пути.
После того, как ваш путь настроен, вам нужно запустить инструмент android
и установить дополнительные инструменты и платформы Android (версии).
Вам понадобится Apache ANT и время выполнения java.
Обратите внимание, что это не специфические требования к cordova, а требования к разработке Android с SDK.