在我目前从事的项目中,我遇到了一些与 Dagger 2 相关的未经检查的警告。
为了排除项目相关因素,我尝试编译 GitHub 上提供的 Dagger 2 示例,它们也导致了这些未经检查的警告。见下文。
/MY_DIRECTORY/../DaggerApplicationComponent.java:28: warning: [unchecked] unchecked conversion
this.demoApplicationMembersInjector = DemoApplication_MembersInjector.create((MembersInjector) MembersInjectors.noOp(), provideLocationManagerProvider);
required: MembersInjector
<Application>
found: MembersInjector
显然创建方法需要一个MembersInjector <Application>
但 Dagger 2 默认将传递的对象转换为 MembersInjector。
我想解决这些问题,以便日志保持干净并且构建服务器再次编译项目。
我正在使用的一些设置:
- 针对 Android 版本 23 进行编译
- Dagger 版本 2.0.1
- Dagger 编译器版本 2.0.1
- Javax 注释 jsr250-api 版本 1.0
最佳答案
我尝试将 Dagger 升级到最新版本 2.19
,问题已经解决。
关于java - Dagger 2 未经检查的警告,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33035510/