databinding 找不到程序包

作者: love_tomato | 来源:发表于2017-05-11 14:03 被阅读0次

    之前没使用过databinding,在移项目的时候,报了这个异常。

    在尝试解决这个问题的时候,看了很多博客并没有解决。

    无意中发现了问题的关键,所以记录下来,也许你的问题和我的会差不多(*^__^*) 

    编译时候的报错,是这个样子的:

    反正大概的意思就是databinding这个包不存在,那需要的类找不到了。

    用过databinding的同学应该都知道,databinding这个包以及此包包含的类都是自动生成的。

    应该在这个位置:Android Studio 将项目切至 project 选项,在项目在下一层级的 build 中,具体见下图。

    遇到此类问题,我建议尝试的第一步不是着急去找问题所在,而是

    或者,将build文件夹删除,重新编译试一试。先排除工具可能带来的问题。

    如果并没有解决。那考虑google一下吧:databinding 程序包 不存在

    总结一下看过的几篇博客的解决方案:一般都是使用databinding的xml的问题。

        1、方法名不对应

        2、语法有问题

        3、类名的全路径写错了

    总之,所有的博客,给出的都是databinding使用的时候,xml里面的语法或者使用姿势有问题。

    我也亲自尝试,这些确实会导致 程序包找不到这种错误的。

    如果你经过检查,发现自己的失误修改后成功解决问题了。那OK。如果还是不行,那么你的问题,也许和我的问题,是一样的。

    我检查了好多次,也查了databinding的使用以及注意事项,但是我发现我的用法和姿势都是没有问题的。那么问题到底出在哪里呢?databinding有那么坑么,甭管他坑不坑了,问题不解决,项目就进行不下去啊!!

    再回到编译报出的错误,我想从AS告诉我的信息里再找一找原因。

    上图,我已经标出了。一个与databinding无关的报错。是关于EventBus的错误。

    这在日常工作中其实是很难出现的,编译器同时报出两个编译时异常。

    这是在什么情境下呢。我是在移项目的时候,将原本的项目,抽出一部分功能做一个SDK ,我的做法是想把所有的编译异常解决,按照这种思路,出现了这种场景。

    你肯定不能相信,最后面的这个异常,与databinding有什么关系?

    我也觉得是没关系的。但是我把这个异常解决了以后,databinding的异常就消失了,消失了,消失了。

    特瞄的,真正的问题,并不是databinding,而是出现在报错最后面的那么不起眼的异常!

    总结:databinding包以及包含的类,是在编译的时候生成的。在编译出现错误的时候,那么可能会报出databinding包找不到或者类找不到的异常。(不仅仅databinding会导致,别的问题,也可能会导致)。

    你如果实在找不到原因,试着多看几遍异常信息,看会不会有所发现呢?

    相关文章

      网友评论

        本文标题:databinding 找不到程序包

        本文链接:https://www.haomeiwen.com/subject/pmsotxtx.html