首页 > 解决方案 > 在错误的包中生成的数据绑定

问题描述

我的项目中有几个模块,我重命名了其中一个(包括包)。该模块是一个databinding启用的 Android 库模块。重命名后,ActivityBindingImpl文件在旧包中生成。和文件在新包中生成,如下所示BRDataBinderMapperImpl

module
 -- java (generated)
 ---- old.package
 ------ ActivityBindingImpl
 ---- new.package
 ------ BR
 ------ DataBinderMappingImpl

然后我得到预期的构建错误:

ActivityBindingImpl.java:2:错误:找不到符号导入 old.package.BR

文件中的包Manifest是正确的。

我尝试清理项目,使 Android Studio 缓存无效,按照此处databinding的说明禁用/启用,但没有任何效果。

编辑:

kapt {
    useBuildCache = false
}

也没有帮助:(

标签: androidandroid-studiodata-bindingandroid-databinding

解决方案


添加kapt "com.android.databinding:compiler:3.1.4"到已build.gradle修复的问题。不知道具体为什么。


推荐阅读