ButterKnife 从7.x升级到8.x带来的NullPointException

Posted xiaohuanqi

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了ButterKnife 从7.x升级到8.x带来的NullPointException相关的知识,希望对你有一定的参考价值。

博客转移到个人站点:http://www.wangchengmeng.club/2018/02/01/ButterKnife%E4%BB%8E7.x%E5%8D%87%E7%BA%A7%E5%88%B08.x%E5%B8%A6%E6%9D%A5%E7%9A%84NullPointException/

欢迎来吐槽

今天把自己的一套框架翻了一遍,该升级的升级,升级过程中除了一下改变小的开源框架,Rx2.0的改动很大之外,就是ButterKnife带来的坑了,直接就给你来一个NullPointException。

解决办法:
搜寻了一大堆之后,总结了以下
1.
在Project的buildgralde下加上:
classpath ‘com.neenbedankt.gradle.plugins:android-apt:1.8’

在app的buildgradle下 加上:

apply plugin: ‘com.neenbedankt.android-apt’

dependencies
compile ‘com.jakewharton:butterknife:8.1.0’
apt ‘com.jakewharton:butterknife-compiler:8.1.0’

如果你是studio3.0以前,那恭喜你 也许你的空指针不见了(建议重启一下)。

到这里兴致勃勃的跑了代码,崩…….继续NullPotintException。那么来看第二条。

2.在Butterknife 8.x以上,studio3.以上(没有apt这种写法了)

在Project的build.gradle中加上:

dependencies
classpath ‘com.jakewharton:butterknife-gradle-plugin:8.5.1’

在app的build.gradle中加上:

compile ‘com.jakewharton:butterknife:8.5.1’
annotationProcessor ‘com.jakewharton:butterknife-compiler:8.5.1’

建议重启一下,到这里你的空指针不见了。

遇到的坑一定记录一下。升级需谨慎

以上是关于ButterKnife 从7.x升级到8.x带来的NullPointException的主要内容,如果未能解决你的问题,请参考以下文章

[网络/Linux]CentOS7:OpenSSH升级到7.9p1

如何将 laravel 版本从 8.x 降级到 7.x?

干货 | Elasticsearch 8.X 版本升级指南

干货 | Elasticsearch 8.X 版本升级指南

java.lang.IllegalStateException: Bindings already cleared.

PHP 版本从 5.x 升级到 7.x