【问题标题】:Gradle is issuing an error "Could not create plugin of type 'AppPlugin'"Gradle 发出错误“无法创建‘AppPlugin’类型的插件”
【发布时间】:2013-12-28 05:53:45
【问题描述】:

我正在尝试使用 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-studioIntelliJ 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')
}

【问题讨论】:

  • 你能展示一下你的“build.gradle”是什么样子的吗?
  • 很抱歉遗漏了如此重要的数据。这是build.gradle
  • 我试过这个“build.gradle”——这个错误出现在 gradle 1.10 下并通过降级到 1.9 解决。

标签: android gradle


【解决方案1】:

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

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

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

没有人是完美的:)

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

【讨论】:

  • 谢谢。我猜它是在 0.7.3 版本中修复的。我已将其配置为“0.7.+”。
  • 很高兴它已为您修复。我已经停止使用表达式“0.7.+”,因为 0.6、0.7.1 和 0.7.2 给我带来了问题。我现在修复一个版本 - 例如“0.7.3”。
  • 噢!谢谢你,该死的我是个混蛋。
【解决方案2】:

【讨论】:

  • 应该仔细阅读,我看你已经试过1.9了。
  • 正是我想要的。这个答案应该被“接受”
  • 好的。它解决了这个问题。看来我在 PATH 环境变量中放错了版本。非常感谢。
  • 另外,为了将来参考,切换到更新版本的 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

【讨论】:

  • 用 gradle:0.8.+ 代替 gradle:0.8.0 不是更好吗?这样你就知道你正在使用最新的 gradle 插件。
  • @IgorGanapolsy 不一定是最好的。例如,如果当时你已经完成了 gradle:0.7.+,你很可能遇到了现在众所周知的问题。最新的并不总是最好的。
【解决方案4】:

如果您使用命令行来创建项目,如下所示:

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 文件夹,但我不确定是否有必要

这一切都会再次起作用。

【讨论】:

  • 谢谢!这是使用最新工具集对我有用的解决方案。 (截至 2015 年 7 月)
  • 谢谢!谷歌如此无耻地喝着Idea的Kool-aid,他们的命令行工具处于一种令人遗憾的状态......
【解决方案5】:

如果您尝试使用

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

和命令./gradlew wrapper你会得到和上面一样的错误。

解决方案是在您的机器上安装 Gradle 1.10 并升级您的项目不使用包装器

gradle wrapper

【讨论】:

  • 有没有办法下载 gradle wrapper 1.10 并将其放入 Android Studio 中?
  • 你必须在文件资源管理器中完成并避免 Aside
【解决方案6】:

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

【讨论】:

    【解决方案7】:

    对于使用 2.1 版 studio 的用户,请将 classpath 'com.android.tools.build:gradle:2.1.0-rc1' 替换为 classpath 'com.android.tools.build:gradle:2.1.0'。这解决了我的问题。

    【讨论】:

      【解决方案8】:

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

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

      这是使用 Android Studio 0.5.8。

      【讨论】:

      • -1 有什么解释吗?我当时正在分享一个可行的解决方案。
      【解决方案9】:

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

      【讨论】:

        【解决方案10】:

        好吧,我猜 android studio 对此有答案,可以使用 GUI 解决这个错误,

        我遇到了这样的错误...

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

        所以将gradle setting 更改为默认值,如图所示,

        此构建成功后。

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2014-04-16
          • 1970-01-01
          • 2014-08-27
          • 1970-01-01
          • 2016-12-03
          • 2020-05-12
          相关资源
          最近更新 更多