不支持的方法:运行项目时的AndroidProject.getPluginGeneration()

时间:2016-09-20 10:18:16

标签: android android-studio android-studio-2.2

我正在尝试使用Android Studio 2.2运行我的项目但是我收到此错误

Unsupported method: AndroidProject.getPluginGeneration().
The version of Gradle you connect to does not support that method.

我正在使用ButterKnife 8.4.0

我的应用程序gradle.file:

buildscript {
    repositories {
        jcenter()
    }
    dependencies {
        classpath 'com.android.tools.build:gradle:2.2.0'
        classpath 'com.neenbedankt.gradle.plugins:android-apt:1.8'
    }
}

我的模块gradle文件:

apply plugin: 'com.android.application'
apply plugin: 'android-apt'

android {
    compileSdkVersion 23
    buildToolsVersion "23.0.3"

    defaultConfig {
        applicationId "xxx.xx"
        minSdkVersion 10
        targetSdkVersion 23
        versionCode 1
        versionName "1.0"
    }
}

dependencies {
    compile 'com.jakewharton:butterknife:8.4.0'
    apt 'com.jakewharton:butterknife-compiler:8.4.0'
}

为什么它不起作用,如何解决?

7 个答案:

答案 0 :(得分:282)

一般问题: -

可能会发生这种情况,因为AS正在检查“即时运行”功能的可用性。修复是禁用即时运行:

Windows& Linux操作系统:

File -> Settings -> Build, Execution, Deployment -> Instant Run.

<强>的Mac:

Android Studio -> Preferences -> Build, Execution, Deployment -> Instant Run.

enter image description here

感谢@pophus提及此事。

使用此步骤如果您使用的是刀具: -

如果你使用版本为2.2.0或更高版本的新Jack编译器,则不需要'android-apt'插件,而是在声明编译器依赖时可以用apt替换apt。

即删除

classpath 'com.neenbedankt.gradle.plugins:android-apt:1.8'

来自您的主gradle文件

并删除

apply plugin: 'android-apt'

来自您的主模块文件

并替换

apt 'com.jakewharton:butterknife-compiler:8.4.0'

annotationProcessor 'com.jakewharton:butterknife-compiler:8.4.0'

答案 1 :(得分:24)

我在Android Studio 2.2中遇到此错误,在我的情况下,这是因为AS检查即时运行功能的可用性。我通过禁用即时运行来修复它:

Android Studio -> Preferences -> Build, Execution, Deployment -> Instant Run

答案 2 :(得分:7)

将gradle版本更改为2.2

dependencies {
    classpath 'com.android.tools.build:gradle:2.2.0'
}

答案 3 :(得分:5)

在Windows上它是

File / Settings/ Build, Execution, Deployment / Instant Run.

取消选中Enable Instant Run to hot swap code...

答案 4 :(得分:1)

关闭即时运行

<强>窗  文件设置 - 构建,执行,部署 - 即时运行。

<强> MAC Android Studio - &gt;偏好 - &gt;构建,执行,部署 - &gt;即时跑步。

答案 5 :(得分:1)

我在一个非常老的项目中遇到了同样的错误。由于Android Studio 3.5不再具有“即时运行”选项,因此我需要其他解决方案。

原来,我不得不在“项目设置”中手动更改gradle版本。我使用了“新项目”将自动使用的版本,因为下拉列表为空。

在我的情况下,它是插件版本3.5.1和Gradle版本5.4.1。

此后,我开始构建-清理项目,结果一切正常。

答案 6 :(得分:1)

只需将Gradle插件版本升级到最新版本:

dependencies {
        classpath 'com.android.tools.build:gradle:3.5.1'

        // NOTE: Do not place your application dependencies here; they belong
        // in the individual module build.gradle files
    }

并确保您的Gradle也是最后一个v:

#Sun Nov 03 16:47:32 IRST 2019
distributionBase=GRADLE_USER_HOME
distributionPath=wrapper/dists
zipStoreBase=GRADLE_USER_HOME
zipStorePath=wrapper/dists
distributionUrl=https\://services.gradle.org/distributions/gradle-5.4.1-all.zip

注意:也在存储库中使用google