Dagger2与Koltin问题Unresolved reference:DaggerXXComponent

(1)kotlin与dagger2问题:Unresolved reference:
DaggerXXComponent;

大家在Kotlin (kt)上使用实战Dagger2 的时候,应该有碰到此类问题;我今天碰到了记录下解决方案:
这种问题:其实如果我们集成的时候看了dragger github项目时就可以避免,但是我这个人比较轴,因为我的项目里是混合编程,有java,kotlin. 所以一开始集成就是按照这种方式集成:
在这里插入图片描述
因为我自己以为在kt下也可以是使用 annotationProcessor,
结果自己折腾之后,发现Unresolved reference:DaggerXXComponent; 不过自己自己采坑在解决挺好,这种感觉挺舒服;所以为了能在kt下跑起来,顾还是根据项目提示更改为kapt形式引入。同时引入插件:
在这里插入图片描述
好那么这个问题可以解决;
2)坑2:
我直接上图大家应该能知道啥意思了在这里插入图片描述
如果用被我注释掉的那块代码,是编译不成功的为啥,我们将Koltin代码转换为java代码发现默认对象成了私有的,private.
懂了吧,注入对象不能是私有的。所以我改成上述lateinit方式。
或者以下方式:
在这里插入图片描述
备注下:可能很多同学都是以Java编程为主,所以代码有的Activity.java 为主, Activity.kt 为辅。那么大家在用Dragger 依赖引入的时候。只能选择其中一种拉,因为他们没有兼容。所以大家根据自己项目需求看用哪种依赖引入是Kapt还是annotationProcessor了。我建议用Kapt代码编程,感受下Google爸爸的坚定信念。

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值