Я знаю, что есть много вопросов, похожих на этот, но я не смог найти решение своей проблемы ни в одном из них. Кроме того, я предоставлю детали для моего конкретного случая.
Я кодировал 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 Studio 2.3, последняя версия на данный момент
- Платформа Android SDK-Инструменты 25.0.3
- Android SDK Tools 25.3.1
- Все версии Android от 2.1 (эклер) до 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?
источник
Изменить 3:
Cordova Android 6.2.2 был выпущен и полностью совместим с инструментами SDK 26.0.x и 25.3.1. Используйте эту версию:
cordova platform update android@6.2.2
или
Изменить 2:
Был выпущен еще один выпуск инструментов Android SDK (26.0.x), который не полностью совместим с cordova-android 6.2.1.
Изменить: Cordova Android 6.2.1 был выпущен, и теперь он совместим с последним Android SDK.
Вы можете обновить свою текущую несовместимую платформу Android с
cordova platform update android@6.2.1
Или вы можете удалить существующую платформу и добавить новую (удалит любое ручное изменение, которое вы сделали внутри
yourProject/platforms/android/
папки)cordova platform rm android cordova platform add android@6.2.1
Вы должны указать версию, потому что текущий CLI устанавливает 6.1.x по умолчанию.
Старый ответ:
К сожалению, инструменты Android SDK 25.3.1 сломали Cordova-Android 6.1.x
Для тех, кто не хочет понижать версию инструментов SDK, вы можете установить cordova-android из URL-адреса github, так как большинство проблем уже исправлено в основной ветке.
cordova platform add https://github.com/apache/cordova-android
источник
cordova platform add android@6.2.0
работает, хотя.cordova platform add android@6.2.3
безопасно использовать, вам не нужно добавлять версию github, и она может быть нестабильной, лучше использовать 6.2.3, как и последнюю выпущеннуюError: Could not find gradle wrapper within Android SDK. Might need to update your Android SDK.
Любой совет?cordova platform rm android
снова и добавьтеcordova platform add android
android@latest
?(В основном то, что @ user3464070 уже сказал)
Для Mac:
источник
cd $ANDROID_HOME
для простоты?$ANDROID_HOME
не определен на моей машине.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
. Также установите имя пользователя для вашего текущего имени пользователя.источник
Для Linux есть даже немного лучшее решение.
Перейдите к https://developer.android.com/studio/index.html#downloads
и загрузите zip-файл инструментов командной строки (внизу страницы) для linux. Извлеките их в папку .... / Android / Sdk /, чтобы перезаписать / расширить папку инструментов. Теперь все работает отлично.
источник
C:\Users\username\AppData\Local\Android\sdk\tools
для Ubuntu/home/user/Android/Sdk
Для тех, кто все еще имеет эту проблему, это сработало для меня:
затем соберите, и он автоматически загрузит новейшую версию Gradle и должен работать
источник
cordova-android@6.2.3
. Старые ответы могут или не могут работать или быть правильными больше. Эта ситуация постоянно меняется и напрямую вызвана тем, что Android SDK 25.3.1 отбрасывает поддержку бинарного файла Android, как описано здесь: cordova.apache.org/announcements/2017/04/05/…could not find gradle wrapper
ошибка. Мне снова пришлось искать решение на SO. Это исправление для каждого проекта должно применяться к каждому новому создаваемому вами проекту Cordova. Если бы я мог это сделать, дважды проголосовал бы, это уже второй раз, когда этот ответ меня спас.Нет необходимости понижать версию Android Tools. В Windows Gradle перешел из:
чтобы:
Так что вам просто нужно настроить путь так, чтобы он указывал на нужную папку.
источник
если у вас есть эта ошибка, когда вы
ionic run android --device
источник
Просто скопировал все из типичной установки Android Studio. От: D: \ sw \ dev \ android \ studio \ plugins \ android \ lib \ templates
(весь каталог шаблонов)
Для того, чтобы:
D: \ SW \ DEV \ Android \ SDK \ инструменты
Протестировано с ионной сборкой Android
источник
Эта проблема возникает, когда у вас нет обертки Gradle в ваших инструментах SDK.
Как и в предыдущих ответах, вы можете обновить до последней
cordova-android
версии (это работает), но если вы хотите продолжать работать сcordova-cli@6.4.0
иcordova-android@6.0.0
, просто скопируйте папку из Android Studio ex .;В моем случае я использую
cordova-plugin-fcm
и он был протестирован со старой версией Cordova-Android, поэтому я не могу использоватьcordova-android@2.x
(пока нет).источник
Для Linux просто создайте символическую ссылку, например так:
источник
/opt/android-studio/plugins/android/lib/templates/gradle/wrapper/gradlew
нет разрешения на выполнение. Убедитесь, что chmod это, прежде чем пытаться.sdk/tools
.На 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
источник
Совсем недавно я также столкнулся с подобной проблемой, и после того, как я это сделал, это работает:
Я редактировал файл в
/etc/profile
Другая информация (на всякий случай):
Не совсем уверенный в
m2repository
части, с первой попытки она проходит гранд, но есть другая ошибка (gradlew-command-failed-with-exit-code-Я использую:
Надеюсь, что это может помочь любому, у кого может быть такая же проблема, как у меня, и которая тоже нуждается в этом.
Спасибо
источник
Это решило мою проблему.
Я только что загрузил https://dl.google.com/android/repository/tools_r25.2.5-macosx.zip214 и переписал папку инструментов в ~ / Library / Android / sdk / tools
источник
Нет необходимости обновлять SDK. Попробуйте установить его вручную. Следуйте инструкциям в этой ссылке
https://gradle.org/install
источник
Ни одно из решений не работало для меня на сегодняшний день. Моя ситуация состояла в том, что я обновил свою студию Android. Самая популярная вещь, чтобы заменить папку инструментов на последнюю, не подойдет мне. Infact не требуется в некоторых случаях.
npm update -g cordova
сделал трюк для меня.Затем я удалил платформу и добавил ее снова.
ionic platform remove android
ionic platform add android
Это работает для меня в Ionic. Я уверен,
cordova platform remove/add android
что сделаю то же самое. Не проверено, хотя.Работаю снова!
источник
Попробовав все здесь дважды в другом порядке, я переустановил все и перед тем
cordova platform add android
как пойтиtemplates/gradle
и побежалgradlew.bat
. После этого я смог добавить платформу Android без каких-либо проблем.источник
Это решило это для меня:
источник
Бегать:
И убедитесь, что в Android Studio и Android Studio переменная среды привязана к одному и тому же местоположению.
Я исправляю это, копируя Android Studio из:
в
источник
После обновления Cordova до 7.0.x путь к Gradle был изменен, как описано выше. Чтобы заставить его работать до выхода официального исправления, просто установите Gradle и установите его в своей среде.
Вот и все.
источник
После того, как возникла та же проблема, просто переименуйте имя пакета в config.xml, атрибут id с именем без "-" внутри ...
т.е.
com.web-projet.appname
переименован в:
com.webprojet.appname
и все было правильно ...
Если это поможет
источник
Установка Cordova версии 5.0 мне помогает:
источник
Я использую Ubuntu 16.04 и для меня это работало, просто используя две команды: -
источник
Простое и простое решение для MAC
Моя проблема была
Решение
Cordova build android снова работает сейчас !!!
источник