【问题标题】:groovy.lang.MissingMethodException when trying to use viewbinding尝试使用视图绑定时出现 groovy.lang.MissingMethodException
【发布时间】:2021-04-05 13:30:28
【问题描述】:

我正在做一个大项目,我正在尝试使用两种不同的方法添加视图绑定:

第一种方法:

buildFeatures {
    viewBinding true
}

第二种方法:

viewBinding {
    enabled true
}

在这两种情况下,我都会收到 Caused by: groovy.lang.MissingMethodException: No signature of method: build_4xgux05b5phesnrai6p6fg7vc.android() is applicable for argument types: (build_4xgux05b5phesnrai6p6fg7vc$_run_closure3) values: [build_4xgux05b5phesnrai6p6fg7vc$_run_closure3@5e534db6]

我将这个放在 android { } 我的模块:app 中。

知道为什么会发生这种情况吗?

【问题讨论】:

  • 分享你的 android studio 和 android gradle 插件版本。
  • @sdex Android Studio 3.6.1 和 gradle com.android.tools.build:gradle:3.4.2

标签: android gradle groovy android-viewbinding


【解决方案1】:

您需要将android gradle插件版本提高到3.6.0(或更高):

// Android Gradle Plugin 3.6.0
android {
    viewBinding {
        enabled = true
    }
}

或者:

// Android Gradle Plugin 4.0
android {
    buildFeatures {
        viewBinding = true
    }
}

【讨论】:

    【解决方案2】:

    我在我的 Android Studio 上遇到了同样的问题,我做了什么来解决它:

    之前

    android { 
       ...
    } 
    

    我检查插件字段,即:

    plugins {
        id 'com.android.application'
        id 'kotlin-android'
        id 'kotlin-android-extensions'
        id 'kotlin-kapt' <- this one is when you need to use databinding I think
    }
    

    为了解决这个问题,我只需添加一行

    id 'kotlin-android-extensions'
    

    一切都按预期工作,希望这个答案对您的问题有用

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-11-25
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-09-13
      相关资源
      最近更新 更多