Unable to find method 'com.android.build.gradle.api.BaseVariant.get异常解决

butterknife和Android studio升级后异常 Unable to find method ‘com.android.build.gradle.api.BaseVariant.get

butterknife已经升级到8.8.1版本了,说实话确实是好用,不然也不会一直在使用它,最近一直打算写一个及时通讯的项目。顺便熟悉一下升级后的Android studio。和平常创建项目一样的步骤,果然真的是每一次升级都是一段血泪史,一点也不出意外的报错。

这里写图片描述

我能怎么办,我也很绝望。
这里写图片描述

好了反正是经过各种排查确认,最后确定了根源,也就是最后的罪魁祸首,butterknife。马上去GitHub上确认一下导入过程没有什么问题呀,但是就是这个报的错呀。最后在网上也找到了解决的办法。

第一种

把butterknife降到8.4.0降级以后的butterknife在升级的以后的Android studio上使用没问题。

第二种

把你的studio降级到3.0.0

        dependencies {
                classpath 'com.android.tools.build:gradle:3.0.0'
                classpath 'com.jakewharton:butterknife-gradle-plugin:8.8.1'
                // NOTE: Do not place your application dependencies here; they belong
                 // in the individual module build.gradle files
        }

对于有强迫症的好办法

GitHub上的步骤是这样的,

    buildscript {
      repositories {
        mavenCentral()
       }
      dependencies {
        classpath 'com.jakewharton:butterknife-gradle-plugin:8.8.1'
      }
    }

and then apply it in your module:

apply plugin: 'com.android.library'
apply plugin: 'com.jakewharton.butterknife'

    dependencies {
      implementation 'com.jakewharton:butterknife:8.8.1'
      annotationProcessor 'com.jakewharton:butterknife-compiler:8.8.1'
    }

当然这样用还是会报错,不报错的用法是
这里写图片描述
这里写图片描述

测试无问题。

猜你喜欢

转载自blog.csdn.net/jia_you1/article/details/80874970
今日推荐