解决Dagger2与ButterKnife冲突

发现问题

  • 使用ButterKnife引入Dagger2后发现点击以及控件的查找均失效,主要是butterknife和dagger2都用到了annotation;

解决方法

  1. 关于注解的问题[点击跳转](“http://blog.csdn.net/xx326664162/article/details/68490059“)
  2. 按照官方正常配置App的build

    dependencies {
    classpath 'com.android.tools.build:gradle:2.3.2'
    //配置butterKnife
    classpath 'com.jakewharton:butterknife-gradle-plugin:8.6.0'
    //配置Dagger2
    classpath 'com.neenbedankt.gradle.plugins:android-apt:1.8'
    }
  3. 项目build中配置

    apply plugin: 'com.jakewharton.butterknife'
    apply plugin: 'com.neenbedankt.android-apt'
    
    
    //在android中配置
     /* 解决Dagger2跟ButterKnife的冲突 */
        packagingOptions {
            exclude 'META-INF/services/javax.annotation.processing.Processor'
        }
    
        //配置ButterKnife:注意使用compile导包 : compile会编译到最后的APK或library,apt不会
      compile 'com.jakewharton:butterknife:8.6.0'
      compile 'com.jakewharton:butterknife-compiler:8.6.0'
    
        //Dagger2的使用注意使用provided引用butterKnife中的library解决冲突
      compile 'org.glassfish:javax.annotation:10.0-b28'
      compile 'com.google.dagger:dagger:2.5'
      provided 'com.google.dagger:dagger-compiler:2.5'
    
  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值