“错误:无法生成视图绑定器 java.lang.NullPointerException” 的可能原因

我正在使用Android Studio进行我的Android项目。当构建崩溃与奇怪的堆栈跟踪时,我遇到了一个问题,如下所示:

Error:Execution failed for task ':app:compileDevDebugJavaWithJavac'.
 java.lang.RuntimeException: failure, see logs for details.
  cannot generate view binders java.lang.NullPointerException
    at android.databinding.tool.reflection.ModelMethod.isBoxingConversion(ModelMethod.java:155)
    at android.databinding.tool.store.SetterStore.isBetterParameter(SetterStore.java:946)
    at android.databinding.tool.store.SetterStore.getBestSetter(SetterStore.java:838)

而且似乎数据绑定变得整体破碎。

我之前进行了重构,并在包之间移动类。


答案 1

就我而言,我在包之间重命名和移动类时依赖于Android Studio。但是它没有对布局的XML进行更正,其中引用了中元素属性中的重构类。typevariabledata

因此,我以前的类型值指向不存在的文件,并且构建崩溃了。

这是一个简单的错误,但可能需要更多时间才能找到来源。希望这能帮助某人。


答案 2

对我来说,这是在将Android Studio更新到版本3.5.2后开始发生的。

为了解决这个问题,我降级了Android Gradle Plugin

buildscript {

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

推荐