解决AndroidStudio引入Lambda之后导致ButterKnife8.4.0版本无法初始化View问题
来源:互联网 发布:诗歌音步 知乎 编辑:程序博客网 时间:2024/05/22 13:50
项目中遇到的小坑
引入ButterKnife
ButterKnife 8.4.0正常配置如下:
在Project中的build.gradle配置
buildscript { repositories { mavenCentral() } dependencies { ... classpath 'com.jakewharton:butterknife-gradle-plugin:8.4.0' }}
在module中如下配置:
apply plugin: 'com.android.library'apply plugin: 'com.jakewharton.butterknife'...dependencies { compile 'com.jakewharton:butterknife:8.4.0' annotationProcessor 'com.jakewharton:butterknife-compiler:8.4.0'}
引入Lambda
在Project项目中如下配置:
buildscript { repositories { mavenCentral() } dependencies { ... classpath 'me.tatarka:gradle-retrolambda:3.2.5' }}
在module中如下配置:
apply plugin: 'me.tatarka.retrolambda' // lambda表达式插件...dependencies { ... compileOptions { //使用JAVA8语法解析 sourceCompatibility JavaVersion.VERSION_1_8 targetCompatibility JavaVersion.VERSION_1_8 } retrolambda { //指定将源码编译的级别,使用下列代码,会将代码编译到兼容1.6的字节码格式 javaVersion JavaVersion.VERSION_1_6 }}
那现在问题就来了。发现ButterKnife注解的View都能注解成功
但app运行时,View都报空指针异常。。
经过查找资料,把ButterKnife配置如下成功解决问题:
在Project下的build.gradle下删除原来的butterknife插件路径
classpath ‘com.jakewharton:butterknife-gradle-plugin:8.4.0’
换成apt插件路径
classpath ‘com.neenbedankt.gradle.plugins:android-apt:1.8’
然后module改为如下配置
apply plugin: 'com.android.library'apply plugin: 'android-apt'...dependencies { ... compile 'com.jakewharton:butterknife:8.4.0' apt 'com.jakewharton:butterknife-compiler:8.4.0'}
当然可能有更好方法。。。这里先记录过程,有时间再探究一下。。
0 0
- 解决AndroidStudio引入Lambda之后导致ButterKnife8.4.0版本无法初始化View问题
- 51平台下初始化文件的引入导致全局变量无法初始化的问题
- 解决AndroidStudio从网络引入三方jar包,项目中无法找到类问题
- AndroidStudio引入第三方库导致的包冲突解决
- butterknife8.4.0控件注解框架无法使用问题
- 解决服务器无法在已发送 HTTP 标头之后设置状态导致的一个问题
- 解决Mac AndroidStudio无法关联源码问题
- 解决Mac Androidstudio无法关联源码问题
- Xcode7及之后版本无法联网问题
- 解决cocos2d-x 2.1.3版本之后 lua无法调试的问题
- 解决无法引入外部Myeclipse工程问题
- 解决 MPAndroidChart 无法引入依赖的问题
- 查找maven依赖的jar mvn dependency:tree解决多项目多引入jar包版本导致的问题
- 解决运行ASP.NET MVC项目时,因版本不一致导致无法运行的问题
- 解决Maven update project之后版本问题
- 解决LSP问题导致无法上网
- jdk版本和sdk版本不一致问题导致无法打包
- 使用ButterKnife8以上版本,控件报空指针的问题
- HBase 集群部署
- SVN服务器的搭建与使用(一)
- Java的NIO之ByteBuffer底层分析
- 数据结构之深度优先搜索(用栈实现)问题
- 一个售后工程师的逆袭
- 解决AndroidStudio引入Lambda之后导致ButterKnife8.4.0版本无法初始化View问题
- 【Python爬虫系列】Python 爬取上海链家二手房数据
- HOTween简单应用
- 万能Adapter,让你的代码更简洁
- 深度学习Caffe实战笔记(7)Caffe平台下,如何调整卷积神经网络结构
- 第三篇:赔率和盘口的几种形态
- mysql优化(三) 逆规范化与反三范式
- Python练习实例7
- Oracle 求文本相似度的问题