美文网首页
Dagger2采坑学习记录

Dagger2采坑学习记录

作者: bill_jean | 来源:发表于2018-08-23 16:04 被阅读0次

前几日出去面试,被问及dagger2,一无所知。现在ioc框架很火,后端的Spring,到前端的Dagger2。都是同一种思想,到处应用。现在开始学习,并且记录一些使用技巧。实现原理暂且不谈,熟能生巧嘛,先用上了再说。

1.报错

错误: izhonghong.com.dagger2.bean.Student cannot be provided without an @Inject constructor or from an @Provides- or @Produces-annotated method.

izhonghong.com.dagger2.bean.Student is injected at

izhonghong.com.dagger2.SecondActivity.student

izhonghong.com.dagger2.SecondActivity is injected at

izhonghong.com.dagger2.inject.compontent.SecondCompontent.inject(secondActivity)

显示SecondComponent注入失败,指向SecondModule 看SecondModule的代码

@PerActivity

@Named("12345")

public Student getStudent3(){

Student student =new Student();

student.setName("小黄");

return student;

}

这里提供了Student数据 并且有@Named 标签 而MainModule 中也有提供Student实例的方法,并且也标注了@Named

@Provides

@Named("1234")

@PerActivity

public  Student getStudent2(){

Student s =new Student();

s.setName("小蓝");

return  s;

}


去掉@Named标签后build成功。

总结:

1.当Module中只有一个同类实例方法的时候,不能添加@Name()

2.在一个Module中实例方法调用了@Name标签后,不能在其他module中实例化该对象

相关文章

  • Dagger2采坑学习记录

    前几日出去面试,被问及dagger2,一无所知。现在ioc框架很火,后端的Spring,到前端的Dagger2。都...

  • Qt学习采坑记录

    一、QT 技巧/资料 Qt creator for mac 细节配置https://www.jianshu.com...

  • 采坑记录

    一、访问页面报502错误 常见问题: 最大可能是应用启动报错,没有启动起来 应用虽然起来了,但是由于遇到运行时er...

  • element 复选框点击一个全部选中bug

    因为有坑记录下先给出代码在细说 别的我就不说了,采坑记录下。

  • Dagger2无法注入Context

    最近两个月才刚开始在正式项目中使用Dagger2,在此记录一下遇到的坑 Dagger2无法注入Context Mo...

  • Dagger2学习笔记5(关于Lazy,Provide的使用)

    Dagger2学习笔记1(基础概念学习)Dagger2学习笔记2(学习Dagger2的简单使用)Dagger2学习...

  • Dagger2学习笔记4(@Singleton 与@ Scope

    Dagger2学习笔记1(基础概念学习)Dagger2学习笔记2(学习Dagger2的简单使用)Dagger2学习...

  • arraylist采坑记录

    而最近,看到一个以前的同学写的一段代码就是在循环过程中删除元素,我很是纳闷啊。然后后来决定给他改掉。然后引发了另外...

  • iOS采坑记录

    采坑记录 iOS 通过 Webview点击下载链接问题 Webview点击下载链接,需要通过文件名下载文件,需要通...

  • RecyclerView采坑记录

    今天使用RecyclerView过程中遇到了坑,RecyclerView的条目中既有checkbox,又有edit...

网友评论

      本文标题:Dagger2采坑学习记录

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