Gradle выдает ошибку "Не удалось создать плагин типа" AppPlugin ""
Я пытаюсь создать простой проект для Android с gradle. Я работаю на компьютере с Debian GNU/Linux 7 "wheezy".
Я следил за рекомендациями в Gradle Руководство пользователя плагина - Сайт проекта Android Tools, но он выдает сообщение об ошибке:
FAILURE: Build failed with an exception.
* Where:
Build file '/home/alex/Proyectos/MyLogin/build.gradle' line: 11
* What went wrong:
A problem occurred evaluating root project 'MyLogin'.
> Could not create plugin of type 'AppPlugin'.
* Try:
Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output.
BUILD FAILED
Total time: 4.817 secs
Я следил за спецификациями:
- Gradle 1.9
- Плагин 0.7
- SDK 17+ (фактически 19)
Я также запустил проект заново, и результаты, которые я показал, были выданы командой gradle tasks
, как показано в документации.
Я также пробовал gradle 1.10, но результат тот же.
Даже этот вопрос не был полезен, так как он решил с обновлением до gradle 1.6 (я понимаю, что для плагина 0.7 требуется не менее gradle 1.9).
Я пробовал это после ошибки с той же ошибкой в Android-студии и IntelliJ Idea.
EDIT: Я также пробовал с новыми проектами в обеих IDE и получил ту же проблему. Но меня больше всего удивляет то, что обе IDE используют gradle 1.8 в своей завернутой форме. Я попытался настроить оба из них, чтобы использовать локальную установку gradle, но все тот же вопрос.
Что я делаю неправильно? Это ошибка? Как я могу избежать проблемы?
Пожалуйста, помогите мне.
EDIT: Вот мой build.gradle
buildscript {
repositories {
mavenCentral()
}
dependencies {
classpath 'com.android.tools.build:gradle:0.7.+'
}
}
apply plugin: 'android'
repositories {
mavenCentral()
}
android {
compileSdkVersion 14
buildToolsVersion '19.0.1'
defaultConfig {
minSdkVersion 14
targetSdkVersion 19
}
}
sourceCompatibility = 1.6
version = '0.1'
dependencies {
compile 'com.android.support:support-v4:18.0.0'
//compile project(':core')
}
Ответы
Ответ 1
Google допустил ошибку с версией 0.7.2 плагина Gradle:
Примечание: 0.7.2 требует Java7. Это ошибка. Вместо этого используйте 0.7.3.
Версия 0.7.3 снова включает поддержку Java6. Объявление Gradle 0.7.3 в моих файлах сборки действительно разрешает это для меня.
Никто не идеален:)
http://tools.android.com/tech-docs/new-build-system
Ответ 2
Используйте Gradle 1.9 вместо Gradle 1.10. Существует проблема с 1.10: https://code.google.com/p/android/issues/detail?id=63822
Также ответил здесь:
Не удается найти org.gradle.api.artifacts.result.ResolvedModuleVersionResult при применении плагина Android в Gradle
Ответ 3
Я работал, используя Gradle 1.10 с плагином Gradle 0.8.0.
// /build.gradle
// Top-level build file where you can add configuration
// options common to all sub-projects/modules.
buildscript {
repositories {
mavenCentral()
}
dependencies {
classpath 'com.android.tools.build:gradle:0.8.+'
}
}
...
# /gradle/wrapper/gradle-wrapper.properties.
#Sat Feb 01 20:41:29 CET 2014
distributionBase=GRADLE_USER_HOME
distributionPath=wrapper/dists
zipStoreBase=GRADLE_USER_HOME
zipStorePath=wrapper/dists
distributionUrl=http\://services.gradle.org/distributions/gradle-1.10-bin.zip
Ответ 4
Если вы используете командную строку для создания проекта следующим образом:
android create project -g -v 1.2.2 --target 1 --name rtest --path rtest --activity MainActivity --package com.mydomain.rtest
Проект создан для использования версии 1.2.2 для android- gradle -plugin, но проект инициализируется с помощью gradle 1.12, который несовместим.
Чтобы исправить это, выполните следующие действия:
- Откройте
rtest/gradle/wrapper/gradle-wrapper.properties
и установите distributionUrl
в нужную вам версию; например: http\://services.gradle.org/distributions/gradle-2.2.1-all.zip
(не забудьте выйти из двоеточия - да, это тоже заставляет меня улыбаться);
- Откройте
build.gradle
и измените runProguard false
на minifyEnabled false
;
-
./gradlew clean && ./gradlew assembleDebug
- Я также удаляю скрытую папку
.gradle
, но я не уверен, что это необходимо
И все это снова работает.
Ответ 5
Если вы пытаетесь обновить проект Gradle 1.9 до Gradle 1.10, используя
task wrapper(type: Wrapper) {
gradleVersion = '1.10'
}
и команда ./gradlew wrapper
вы получите ту же ошибку, что и выше.
Решение состоит в том, чтобы установить Gradle 1.10 на ваш компьютер и обновить проект , не используя оболочку
gradle wrapper
Ответ 6
Вы также можете получить эту ошибку, если обновите систему gradle и запустите обновление дома Android Studio gradle.
Ответ 7
Для тех, кто использует 2.1 версию студии, замените classpath 'com.android.tools.build: gradle:2.1.0-rc1' с classpath 'com.android.tools.build:gradle:2.1 +0,0'. Это решило мою проблему.
Ответ 8
Я получил это сегодня при запуске gradle assembleRelease. Я установил Ubuntu по умолчанию gradle -1.4. Это не сработало, поэтому я попробовал последнюю версию gradle -1.12 и получил ту же проблему.
Загрузка и использование gradle -1.10 (и сопоставление моего файла gradle -wrapper.properties с этой версией) разрешили проблему.
Это с Android Studio 0.5.8.
Ответ 9
Хорошо, я думаю, у андроид-студии есть ответ на этот вопрос, чтобы получить эту ошибку с помощью GUI,
У меня была такая ошибка...
![введите описание изображения здесь]()
после обновления плагинов я столкнулся с другими проблемами при построении,
![введите описание изображения здесь]()
поэтому изменяет gradle setting
на значение по умолчанию, как показано на изображении,
![введите описание изображения здесь]()
После этого сборка прошла успешно.
Ответ 10
Перейдите в зависимости и просто измените путь класса зависимостей на
classpath 'com.android.tools.build:gradle:2.0.0-beta6'
Rest Gradle позаботится. Счастливое кодирование:)