Android Studio使用ButterKnife注解 出现空指针异常解决办法

问题描述

最近看了butterknife注解想要学习一下于是写了一个简单的demo,用的依赖版本为‘com.jakewharton:butterknife:8.0.1’:写完之后运行项目,运行报错,提示空指针异常(NullPointerException),查看了build.gradle文件,写法都是参考例子的根本没问题。


解决方法

通过不断查找资料,最终还是从JakeWharton 的主页找到原因。链接地址

原因分析:因为我使用的版本是8.0.1,而我从例子中参考的是7.0版本,发现我写的跟新版引用的存在差别,于是我按照新版的环境修改具体如下(需要修改项目中的两个build.gradle文件)如图:
Android Studio使用ButterKnife注解 出现空指针异常解决办法_第1张图片

修改的部分如下,在build.gradle加入下列代码
classpath ‘com.neenbedankt.gradle.plugins:android-apt:1.8’ (Project)和 apt ‘com.jakewharton:butterknife-compiler:8.0.1’ compile ‘com.jakewharton:butterknife:8.0.1’(Model)

buildscript {
    repositories {
        jcenter()
    }
    dependencies {
        classpath 'com.android.tools.build:gradle:2.1.2'
        classpath 'com.neenbedankt.gradle.plugins:android-apt:1.8'
        // NOTE: Do not place your application dependencies here; they belong
        // in the individual module build.gradle files
    }
}
dependencies {
    compile fileTree(dir: 'libs', include: ['*.jar'])
    testCompile 'junit:junit:4.12'
    compile 'com.android.support:appcompat-v7:23.4.0'
    compile 'org.lzh.nonview.updateplugin:UpdatePlugin:0.5'
    compile 'com.google.code.gson:gson:2.7'
    compile 'com.android.support:design:23.4.0'
    compile 'org.lzh.nonview.updateplugin:UpdatePlugin:0.5'
    compile 'com.google.android.gms:play-services-appindexing:8.1.0'
    compile 'com.google.code.gson:gson:2.7'

    apt 'com.jakewharton:butterknife-compiler:8.0.1'
    compile 'com.jakewharton:butterknife:8.0.1'
}

最后重新build一下项目运行错误消失了

你可能感兴趣的:(android)