Kotlin使用Dagger2问题

在kotlin中使用Dagger2 的时候,可能出现dagger2代码不能编译的问题
导致此问题的原因可能如下

    annotationProcessor 'com.google.dagger:dagger-compiler:2.8'
    implementation 'com.google.dagger:dagger:2.8'

如果是上术的写法,在编译的时候,则无法生成Dagger2 代码。会出现下面的异常

Unresolved reference: Daggerxxxx

出现这种问题的解决方案是,在外部的gradle添加如下代码

classpath 'com.neenbedankt.gradle.plugins:android-apt:1.8'

在app下面的gradle中添加

apply plugin: 'kotlin-kapt'

而dagger2的引用要改成如下

    kapt 'com.google.dagger:dagger-compiler:2.8'
    compile 'com.google.dagger:dagger:2.8'

此时在编译,则会生成dagger2 代码

你可能感兴趣的:(Kotlin使用Dagger2问题)