初接触dagger,在生成daggerXXXcomponent的过程中踩了不少坑,因此在网上搜罗了可能的原因以及解决方法,并作记录防止再次踩坑。

无法生成daggerXXXcomponent的原因可能有多种,下面先列出笔者在网上找到的可能的原因:

1.未重新构建项目;

网上最多也是最简单的原因:DaggerXXXComponent需要成功编译项目才会生成

解决方法:

如果是Android Studio的话,使用快捷键Ctrl+F9进行编译

2.android studio 3.0之后不再支持apt

解决方法:将 apt 改成 annotationProcessor

例如:

api 'com.google.dagger:dagger:2.15'
apt 'com.google.dagger:dagger-compiler:2.15'

改成:

api 'com.google.dagger:dagger:2.15'
annotationProcessor 'com.google.dagger:dagger-compiler:2.15'

3.following annotation processors are not incremental

原因:gradle plugin版本过高

解决方法:降低(回退)gradle plugin版本

stackoverflow上的回答

4.跨mudle引入dagger

原因:在尝试了上面三种解决方法后,笔者问题尚未得到解决。思来想去,唯一的可能应该是笔者的项目存在多个module,而dagger的依赖是在项目的另一个module引入的(称之为moduleB),然后在app模块中使用的是 api project(:moduleB),导致moduleB里的build.gradle文件annotationProcessor未生效。

解决方法:

方法一:

dagger的component、module文件以及dagger的依赖引入必须处于同一个module中。使用此方法,daggerXXXcomponent将生成在该module中;

方法二:

app模块的api project(':moduleName') 改为 annotationProcessor project(':moduleName'),但是需要注意的是,使用annotationProcessor 将无法获得该module中的资源文件。

dagger2无法生成daggerXXXcomponent原因分析相关推荐

  1. DB time抖动的原因分析

    9月22日,"DBA+社群"开讲啦!由搜狐畅游高级DBA杨建荣在"DBA+北京群"进行了一次关于DB time抖动的原因分析的线上主题分享.小编特别整理出其中精 ...

  2. oracle10g cssd日志,【案例】Oracle CSSD进程HANG导致RAC节点重启原因分析笔记

    [案例]Oracle CSSD进程HANG导致RAC节点重启原因分析笔记 时间:2016-11-04 19:20   来源:Oracle研究中心   作者:HTZ   点击: 次 天萃荷净 Oracl ...

  3. mysql数据库连接过多的错误,可能的原因分析及解决办法

    mysql数据库连接过多的错误,可能的原因分析及解决办法 来源:网络采集 作者:未知 系统不能连接数据库,关键要看两个数据: 1.数据库系统允许的最大可连接数max_connections.这个参数是 ...

  4. sql语句查询过慢的原因分析

    有时候你在使用sql语句查询数据库,sql语句写得好正确,但则发现执行查询的时候很慢呢?数据量也不是太大,你知道其中的原因吗?本文给大家讲解一下sql查询过慢的48种原因分析,请阅读. 1.没有索引或 ...

  5. MongoDB数据量大于2亿后遇到的问题 及原因分析

    MongoDB数据量大于2亿后遇到的问题 及原因分析 一.数据增长情况 每月增长量最大达到了1.9亿,每天增长约300W-500W     (增长数据具体可看页尾) 二.遇到的情况及解决方法 1.数据 ...

  6. 接口方法上的注解无法被@Aspect声明的切面拦截的原因分析

    转载自  接口方法上的注解无法被@Aspect声明的切面拦截的原因分析 前言 在Spring中使用MyBatis的Mapper接口自动生成时,用一个自定义的注解标记在Mapper接口的方法中,再利用@ ...

  7. mysql爆内存_线上MySQL数据库机器内存爆掉原因分析与解决

    本文主要向大家介绍了线上MySQL数据库机器内存爆掉原因分析与解决,通过具体的内容向大家展现,希望对大家学习MySQL数据库有所帮助. 现象: 阿里金融某业务的MySQL机器的内存每隔几天就会增长,涨 ...

  8. [机器学习]京东机器学习类图书畅销原因分析-决策树或随机森林

    一. 问题描述 机器学习图书畅销原因分析 二. 分析问题的过程与步骤 1.在京东网站上爬取3000条关于机器学习类书籍的数据. 爬虫代码可以看这里 爬完结果如下 2. 数据预处理 去掉特殊字符 一些看 ...

  9. Android 系统(74)--Android重启原因分析

    Android重启原因分析 重启原因分类 1.上层造成重启 system_server被杀 watchdog重启 重要线程阻塞 2.kernel造成重启 空指针 非法地址 3.kernel watch ...

最新文章

  1. 有一群200w年薪的朋友是什么感觉?谈一谈入学中国科学院大学的几点感受吧
  2. python3缺少pip_Ubuntu中找不到pip3命令的解决方法
  3. linux redis-4.0,Linux Redis 4.0.2 安装部署
  4. android 转屏 多个实例,android – 处理appwidget的多个实例
  5. 基于JAVA+SpringMVC+Mybatis+MYSQL的二手电动车交易系统
  6. Spark集群 + Akka + Kafka + Scala 开发(2) : 开发一个Spark应用
  7. 【汇编语言与计算机系统结构笔记19】虚存概念初步,MIPS内存管理
  8. 编写高效优雅Java程序
  9. Java实现SM2算法(国密算法)
  10. 项目管理常用文档表格模板一
  11. 十款免费数据恢复软件
  12. vue 微信分享至朋友圈分享至朋友代码封装
  13. 快速取消PPT中所有动画效果
  14. excel两个表格数据对比_表格技巧—Excel表格两列数据合并
  15. u盘插上电脑后计算机没没磁盘,U盘插上电脑没有显示“可移动磁盘”的解决
  16. ArcGIS 制作中国区的数字高程DEM地图(附中国区STRM 90m DEM百度云免费下载链接)
  17. 读《犹太人教子枕边书》
  18. 【转载】应聘总经理的答卷,供大家打分
  19. 一个emoji表情包处理工具类
  20. MPB:猪胃肠道内容物和黏膜样品采集与微生物组成分析

热门文章

  1. 天天酷跑电脑版代码C语言,Java实现天天酷跑小游戏完整代码(附源码).pdf
  2. wifi中的一些基本概念
  3. 腾讯云轻量应用服务器(香港)最新测评(CN2 GIA)
  4. 巴旦木树苗移栽方法丨巴旦木苗木种植技巧
  5. windows store下载_第128届广交会参展软件下载路径
  6. [全民写端]#3添加OptiFine
  7. getminutes函数python举例_JavaScript getMinutes() 方法
  8. coreldraw x7怎么禁网_CorelDRAW X7出现问题无法修复怎么办?
  9. [工作中爬过的坑] Kafka配置域名的三种难度
  10. 2 运维-ubuntu16.04.6xenial-基础环境搭建-安装docker-ce