Ошибка: Не удалось найти оболочку gradle в Android SDK. Возможно, вам нужно обновить Android SDK - Android

Я знаю, что есть много вопросов, подобных этому, но я не мог найти решение для своей проблемы ни в одном из них. Кроме того, я расскажу подробности для моего конкретного случая.

Я закодировал Ionic проект в Ubuntu 16.04 LTS, и теперь мне нужно его создать для выпуска. Поэтому я запускаю команду:

cordova build --release android

И мне показана следующая ошибка:

Error: Could not find gradle wrapper within Android SDK. Might need to update your Android SDK.
Looked here: /home/user/Android/Sdk/tools/templates/gradle/wrapper
  • У меня нет этого каталога templates/gradle/wrapper.
  • Моя Android-студия - 2.3, последняя версия на данный момент
  • Android-платформа SDK Platform-Tools 25.0.3
  • Android SDK Tools 25.3.1
  • Все версии Android от 2.1 (Eclair) до 7.1.1 (нуга)

После обширных исследований я поместил все переменные среды, связанные с Android Studio, в файл /etc/environment. Итак, теперь это выглядит так:

PATH="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/game:/home/<user>/Android/Sdk:/home/<user>/Android/Sdk/tools:/home/<user>/Android/Sdk/platform-tools"

ANDROID_HOME=/home/<user>/Android/Sdk
export ANDROID_HOME

JAVA_HOME=/usr/lib/jvm/java-8-oracle
export JAVA_HOME

GRADLE_HOME=/opt/android-studio/gradle/gradle-3.2
export GRADLE_HOME

Теперь, для тестирования переменных среды, я запускаю следующие команды:

source /etc/environment
echo $PATH
echo $ANDROID_HOME
echo $JAVA_HOME
echo $GRADLE_HOME

И все переменные пути отображаются правильно.

Итак, похоже, что переменные окружения выглядят так, как будто они должны соответствовать различным подобным вопросам и учебникам, которые я искал. Кто-нибудь знает, что я делаю неправильно? Почему я все еще получаю ошибку Gradle Wrapper?

Ответ 1

Я просто испытал ту же проблему.

Это может быть окклюзия в инструкциях относительно установки (или обновления) Android Studio со всеми инструментами SDK, которые мы и я пропустили, или, возможно, ошибкой, созданной новой версией Studio, которая не соответствует тому же файлу как старые версии. Я склоняюсь к последнему, так как многие из сообщений SO в этом разделе, похоже, указывают на ANDROID_PATH с папкой с именем android-sdk, которая не отображается в последней версии (2.3.0.8).

Кажется, обходной путь, хотя, который я только что начал работать на своей машине. Вот что я сделал:

  • Загрузить tools_r25.2.3-windows.zip из Загрузка Android.
  • Извлеченный почтовый индекс на рабочем столе
  • Заменено C:\Users\имя_пользователя\AppData\Local\Android\sdk\tools с извлеченным инструменты подпапок /
  • В папке проекта:

    $кордова платформы удалить андроид
    Платформы $cordova добавляют android

Вам также может потребоваться принудительно удалить node_modules в android. Надеюсь, это поможет.

Ответ 2

Изменить 3:

Отлажена версия Cordova Android 6.2.2 и полностью совместима с инструментами SDK 26.0.x и 25.3.1. Используйте эту версию:

cordova platform update [email protected]

или

cordova platform rm android
cordova platform add [email protected]

Изменить 2:

Появилась еще одна версия инструментов Android SDK (26.0.x), которая не полностью совместима с cordova-android 6.2.1.

Изменить: Выпущена версия Cordova Android 6.2.1 и теперь она совместима с последними версиями Android SDK.

Вы можете обновить текущую несовместимую платформу Android с помощью cordova platform update [email protected]

Или вы можете удалить существующую платформу и добавить новую (удалите любое ручное изменение, которое вы сделали в папке yourProject/platforms/android/)

cordova platform rm android cordova platform add [email protected]

Вы должны указать версию, потому что текущий CLI устанавливает 6.1.x по умолчанию.

Старый ответ:

Уныло Android SDK инструменты 25.3.1 сломал cordova-android 6.1.x

Для тех, кто не хочет понижать инструменты SDK, вы можете установить rootova-android из github url, так как большинство проблем уже исправлено на главной ветке.

cordova platform add https://github.com/apache/cordova-android

Ответ 3

(В основном то, что уже сказал @user3464070)

Для Mac:

cd ~/Library/Android/sdk
# download latest tools
curl -O https://dl.google.com/android/repository/tools_r25.2.3-macosx.zip
# overwrite existing tools folder without prompting
unzip -o tools_r25.2.3-macosx.zip
# clean up
rm tools_r25.2.3-macosx.zip

Ответ 4

  • Если в вашей системе установлена ​​студия Android, скопируйте папку шаблонов с C:\Program Files\Android\Android Studio\plugins\android\lib\templates
  • Вставьте его в папку C:\Users\<user-name>\AppData\Local\Android\sdk\tools
  • Запустите команду: ionic build android

Будут загружены все необходимые файлы jar и будет создан файл apk для приложения.

Примечание. Установите переменные среды в  C:\Users\<user-name>\AppData\Local\Android\sdk\tools.  Также укажите имя пользователя для текущего имени пользователя.

Ответ 5

Для Linux есть даже немного лучшее решение.

Перейдите к https://developer.android.com/studio/index.html#downloads

и загрузите файл zip файлов из командной строки (внизу страницы) для linux. Извлеките их в папку... /Android/Sdk/, чтобы вы перевернули/расширили папку инструментов. Теперь все работает нормально.

Ответ 6

Для тех, кто все еще имеет эту проблему, это сработало для меня:

    cordova platform update [email protected]

затем создайте и он автоматически загрузит новейшую версию gradle и должен работать

Ответ 7

Нет необходимости обновлять инструменты Android. В Windows, Gradle перемещен из:

C:\Users\you_username\AppData\Local\Android\sdk\tools

в

C:\Program Files\Android\Android Studio\plugins\android\lib\templates\gradle\wrapper

Поэтому вам просто нужно настроить свой путь так, чтобы он указывал на нужную папку.

Ответ 8

если у вас есть эта ошибка, когда вы ionic run android --device

## codova - android update 
npm install -g cordova
cordova platform update android

Ответ 9

Просто скопировал все, начиная с обычной установки Android Studio. Из: D:\SW\DEV\Android\студия\Plugins\Android\Lib\Шаблоны

(весь каталог шаблонов)

To:

D:\SW\DEV\Android\SDK\инструменты

Протестировано с помощью ионный сборник android

Ответ 10

Для Linux просто создайте символическую ссылку, например:

ln -s /android/android-studio/plugins/android/lib/templates /android/sdk/tools/templates

Ответ 11

В linux (Ubuntu в моем случае) просто установите gradle:

sudo apt-get install gradle

Изменить: Кажется, что у ретрансляции ubuntu только gradle 2.10, для более новых версий: https://www.vultr.com/docs/how-to-install-gradle-on-ubuntu-16-10

Ответ 12

Эта проблема возникает, если в инструментах SDK отсутствует оболочка Gradle.

Как и в предыдущих ответах, вы можете обновить до последней версии cordova-android (это работает), но если вы хотите продолжать работать с [email protected] и [email protected], просто скопируйте папку из android studio ex.;

cd /Applications/Android\ Studio.app/Contents/plugins/android/lib/
cp -r templates/ $ANDROID_HOME/tools/templates
chmod +x $ANDROID_HOME/tools/templates/gradle/wrapper/gradlew

В моем случае я использую cordova-plugin-fcm, и он был протестирован со старой версией Cordova-Android, поэтому я не могу использовать [email protected] (пока нет).

Ответ 13

Совсем недавно я столкнулся с подобной проблемой, и после того, как я это сделал, она работает:

Я редактировал файл в /etc/profile

sudo nano /etc/profile

export JAVA_HOME=/home/abdul/java/jdk1.8.0_131
export PATH=$PATH:$JAVA_HOME/bin

export ANDROID_HOME=/home/abdul/Android/Sdk
export PATH=$PATH:$ANDROID_HOME/tools
export PATH=$PATH:$ANDROID_HOME/platform-tools

export GRADLE_ANDROID_HOME=/home/abdul/android-studio/gradle
export PATH=$PATH:$GRADLE_ANDROID_HOME/gradle-3.2/bin
export PATH=$PATH:$GRADLE_ANDROID_HOME/m2repository

Дополнительная информация (на всякий случай):

Не совсем уверен в части m2repository, в первую очередь, она пропускает гранд, но есть еще одна ошибка (с кодом gradlew-command-failed-with-exit-code -

  • Я проверяю, активен ли в android studio репозиторий, и он неактивен, я пытаюсь его активировать, и когда я снова его попробую (Cordova build Android), он загружает несколько других файлов, может быть, из репозитория? И затем, когда я удаляю путь, он все еще работает. (также благодаря образцу Marcin Orlowski, поэтому я могу лучше понять путь экспорта).

Я использую:

  • Linux Mint Serena
  • node: v6.10.3
  • npm: 3.10.10
  • Кордова: 7.0.0
  • Android Studio: 2.3.1
  • Платформы для Android SDK: 25.0.5
  • Android SDK tools: 26.0.2

Надеюсь, что это может помочь любому, у кого может быть такая же проблема, как у меня, и это тоже нужно.

Спасибо

Ответ 15

Не нужно обновлять sdk. Попробуйте установить его вручную. Следуйте инструкциям в этой ссылке

https://gradle.org/install

Ответ 16

Ни один из решений не работал у меня на сегодняшний день. Моя ситуация заключалась в том, что я обновил свою студию Android. Самая популярная вещь, которая заменит папку с последними, не будет работать для меня. Infact не требуется в некоторых случаях.

npm update -g cordova помогло.

Затем я удалил платформу и снова добавил ее.

ionic platform remove android

ionic platform add android

Это работает для меня в ионике. Я уверен, что cordova platform remove/add android будет делать то же самое. Не проверено.

Работа снова!

Ответ 17

Проделав все здесь дважды в другом порядке, я переустановил все и перед тем, как сделать cordova platform add android, я пошел в templates/gradle и запустил gradlew.bat. После этого я смог без проблем добавить платформу Android.

Ответ 18

Это решило это для меня:

cordova platform update [email protected]

Ответ 19

Run:

cordova platform update [email protected]

И убедитесь, что переменная refrence для среды Android Studio и Android Studio находится в том же месте.

Я исправлю это, скопировав Android Studio с помощью

D:\Program Files\Android

к

C:\Program Files\Android

Ответ 20

После обновления кордовы до 7.0.x путь gradle был изменен, как обсуждалось выше. Чтобы заставить его работать до выхода официального исправления, просто вручную установите gradle и установите его в своей среде.

  • Go https://gradle.org/install загрузить двоичные пакеты
  • Распакуйте его, запомните путь, например, Мой один на: E:\Gradle
  • Установите переменные среды, например, в Windows, добавьте E:\ Gradle\bin

Что это.

Ответ 21

После того, как вы столкнулись с той же проблемой, просто переименуйте имя пакета в config.xml, идентификатор атрибута с именем без "-" внутри...

то есть.

com.web-projet.appname

переименован в:

com.webprojet.appname

и все было правильно...

Если это помогает.

Ответ 22

Установка кордовой версии 5.0 помогает мне:

npm install -g [email protected]

Ответ 23

Я использую Ubuntu 16.04 и для меня это работало, просто используя две команды: -

ionic cordova platform rm android
ionic cordova platform add [email protected]

Ответ 24

Простое и простое решение для MAC

Мой вопрос был

cordova build android
ANDROID_HOME=/Users/jerilkuruvila/Library/Android/sdk
JAVA_HOME=/Library/Java/JavaVirtualMachines/jdk1.8.0_65.jdk/Contents/Home
Error: Could not find gradle wrapper within Android SDK. Might need to update your Android SDK.
Looked here: /Users/jerilkuruvila/Library/Android/sdk/tools/templates/gradle/wrapper

Решение

[email protected] tools $ cd templates
-bash: cd: mkdir: No such file or directory
[email protected] tools $ mkdir templates
[email protected] tools $ cp -rf gradle templates/
[email protected] tools $ chmod a+x templates/

corova build android снова работает сейчас!!!