Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/84.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android studio 数据绑定类不是';我再也不产生了_Android Studio - Fatal编程技术网

Android studio 数据绑定类不是';我再也不产生了

Android studio 数据绑定类不是';我再也不产生了,android-studio,Android Studio,我在安卓工作室有一个工作项目,包括数据绑定。这消除了一些可能的错误来源 然后我决定对Kotlin有所了解,并开始将一些类从Java迁移到Kotlin。 不幸的是,我也在这个过程的中间更新了Android Studio到3.4。所以现在我有很多活动部件 现在,经过一些编辑,当我尝试编译我的应用程序时,数据绑定类不再生成。通常这是一个缺少getter或setter之类的问题。但目前我没有编译器错误,表明这样的问题。只有对我的BR的所有引用。类为红色,因为未生成该类 在布局文件中,数据变量的gette

我在安卓工作室有一个工作项目,包括数据绑定。这消除了一些可能的错误来源

然后我决定对Kotlin有所了解,并开始将一些类从Java迁移到Kotlin。 不幸的是,我也在这个过程的中间更新了Android Studio到3.4。所以现在我有很多活动部件

现在,经过一些编辑,当我尝试编译我的应用程序时,数据绑定类不再生成。通常这是一个缺少getter或setter之类的问题。但目前我没有编译器错误,表明这样的问题。只有对我的BR的所有引用。类为红色,因为未生成该类

在布局文件中,数据变量的getter和setter没有显示,因此已经存在一个问题

构建日志告诉我检查日志以了解详细信息,但我找不到任何包含可能导致解决方案的错误消息的日志

Android Studio 3.4,混合Java/Kotlin源代码 除了那些缺少的BR类之外,我目前没有其他编译错误

我检查了原始的gradle输出,并尝试使用更详细的输出运行这些步骤-没有运气

也许这是相关的:
-使用约束视图编辑现有布局也有问题。不知何故,这些约束是只读的。 经过一番反复尝试后,我设法将一个布局恢复到读写模式。不是舒尔,我是如何做到这一点的…
-还有一个问题是,Android Studio“记住”了上一个项目,并将上一个项目的配置与当前项目的配置混合在一起。要解决这个问题,我必须删除项目中的.idea文件夹。。。在那之后,我可以继续我的项目,直到我换到另一个项目或同时打开第二个项目…:-/

为了获取日志,我还更改了由编译器生成绑定类,而不是由AndroidStudio动态生成-不走运

由于这是一个有一些历史记录的安装,我还试图从Android Studio中删除配置文件-也没有运气

清理并重建项目,重新启动Android Studio,使缓存无效。。。所有的努力都没有成功


目前我不知道去哪里找。也许有人给了我一个提示?

如果您在xml中使用导入,比如

<import type="java.lang.Integer"/>

您必须删除它,因为android studio是自动导入的

参考:


我终于找到了问题的根源
在多次尝试在我的代码中或Android Studio(也降级到3.3并尝试当前的3.5金丝雀版本)中查找错误后,我决定将代码缩减到最大值

所以我创建了一个新项目。在那个项目中,我创建了2个可观察的类,并从中复制了最少的代码。 我在java中创建了一个类,在Kotlin中创建了一个类(在属性处有一个索引号,这样我就可以看到BR类中生成了哪些属性)。 BR类中只生成了Java类的属性,而Kotlin类中的属性丢失了。除缺少BR属性外,未生成任何错误消息:-(

有了这些信息,我开始了一项新的研究,最终发现,对于Kotlin来说,project build.gradle文件中缺少了
应用插件:“Kotlin kapt”。
一旦我添加了这个,Kotlin类的属性也被添加到了BR类中。
一些(较旧的)文章还将
kapt“com.android.databinding:compiler:x.x.x”
添加到依赖项中,但在最新的编译器中,我得到了空指针异常。似乎该组件已在其他地方引用,因为它不再是必需的(更多)

我还将此添加到我的其他项目中,现在这些BR属性也出现在那里。因此,我有信心找到问题的答案,现在可以专注于修复我的应用程序