java - Dagger 2 未经检查的警告

标签 java android lint dagger-2 unchecked

在我目前从事的项目中,我遇到了一些与 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,问题已经解决。

查看更多:https://github.com/google/dagger/releases

关于java - Dagger 2 未经检查的警告,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33035510/

相关文章:

python - 修复 yaml 文件中的 linting 错误

java - Android Firebase 同步检索数据和 "returning"

java - JVM 是否在加载特定类时加载所有使用的类?

java - 使用java解析HTML中的数字

java - Android 的特定设备检测?

java - 带进度对话框的 webview android

java - JDialog 消失得太早,用户无法查看它包含的信息

java - 从修改覆盖中解决 ConcurrentModificationException

visual-studio-code - 如何在 stylelint 中使用 VSCode Prettier 3 格式

typescript - TSLint 无法识别正确的按位运算符