Gradle发出错误“无法创建'AppPlugin'类型的插件'”

时间:2013-12-28 05:53:46

标签: android gradle

我正在尝试使用gradle创建一个简单的android项目。我在Debian GNU / Linux 7'wheezy'的计算机上工作。

我遵循了Gradle Plugin User Guide - Android Tools Project Site中的推荐,但是它投了一个错误:

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,但结果是一样的。

即使this question也没有用,因为它通过'升级'解决了gradle 1.6(我知道插件0.7至少需要gradle 1.9)。

我在 android-studio IntelliJ Idea 中出现相同错误后尝试了此操作。

编辑:我还尝试在两个IDE中使用新项目,并遇到了同样的问题。但令我惊讶的是,两个IDE都以包装形式使用gradle 1.8。我试图将它们都用于我的本地gradle安装,但仍然是同样的问题。

我做错了什么?这是一个错误吗?我该如何避免这个问题?

请帮助我。

编辑:这是我的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')
}

10 个答案:

答案 0 :(得分:27)

Google在Gradle plugin的版本0.7.2中犯了一个错误:

  

注意:0.7.2需要Java7。这是个错误。请改用0.7.3。

Release 0.7.3重新启用Java6支持。在我的构建文件中声明Gradle 0.7.3确实为我解决了这个问题。

没有人是完美的:)

http://tools.android.com/tech-docs/new-build-system

答案 1 :(得分:22)

答案 2 :(得分:19)

我使用Gradle插件0.8.0使用Gradle 1.10。

// /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

答案 3 :(得分:6)

如果您正在使用命令行创建项目,请执行以下操作:

android create project -g -v 1.2.2 --target 1 --name rtest --path rtest --activity MainActivity --package com.mydomain.rtest

创建项目是为了使用android-gradle-plugin的1.2.2版本,但该项目是使用gradle 1.12初始化的,isn't compatible

要解决此问题,请执行以下操作:

  1. 打开rtest/gradle/wrapper/gradle-wrapper.properties并将distributionUrl设置为您想要的版本;例如:http\://services.gradle.org/distributions/gradle-2.2.1-all.zip(不要忘记逃避冒号 - 是的,这也让我微笑);
  2. 打开build.gradle并将runProguard false更改为minifyEnabled false;
  3. ./gradlew clean && ./gradlew assembleDebug
  4. 我还删除了隐藏的.gradle文件夹,但我不确定是否有必要
  5. 这一切都有效。

答案 4 :(得分:1)

如果您尝试使用

将Gradle 1.9项目更新为Gradle 1.10
task wrapper(type: Wrapper) {
    gradleVersion = '1.10'
}

和命令./gradlew wrapper您将得到与上述相同的错误。

解决方法是将Gradle 1.10安装到您的计算机上并升级您的项目不使用包装

gradle wrapper

答案 5 :(得分:1)

如果您更新系统gradle并忘记更新Android Studio gradle home,也会出现此错误。

答案 6 :(得分:1)

对于那些使用2.1版工作室的人,请替换classpath' com.android.tools.build:gradle:2.1.0-rc1'使用classpath' com.android.tools.build:gradle:2.1.0'。这解决了我的问题。

答案 7 :(得分:0)

今天我在运行gradle assembleRelease时得到了这个。我安装了Ubuntu默认的gradle-1.4。这没用,所以我尝试了最新的gradle-1.12并得到了同样的问题。

下载并使用gradle-1.10(并将我的gradle-wrapper.properties文件与该版本匹配)解决了这个问题。

这是Android Studio 0.5.8。

答案 8 :(得分:0)

好吧我想android studio已经回答了这个问题,使用GUI来解决这个问题,

我有这样的错误...... enter image description here

更新插件后,我在构建时遇到了另一个问题,

enter image description here

所以将gradle setting更改为默认值,如图所示, enter image description here

此构建成功后。

答案 9 :(得分:0)

转到依赖项,只需将依赖项类路径更改为  classpath' com.android.tools.build:gradle:2.0.0-beta6' Rest Gradle会照顾好。快乐的编码:)