Android Kotlin:错误未解决的参考:DaggerAppComponent

我今天已经把Kotlin插件安装到一个现有的Dagger 2项目中。在Kotlin安装之前,我对Dagger没有任何问题。 但是,现在编译器抱怨:

Error:(5, 32) Unresolved reference: DaggerAppComponent Error:Execution failed for task ':app:compileDebugKotlinAfterJava'. > Compilation error. See log for more details Error:(12, 21) Unresolved reference: DaggerAppComponent 

项目gradle:

 ext.kotlin_version = '1.1.1' repositories { jcenter() } dependencies { classpath 'com.android.tools.build:gradle:2.2.2' classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version" classpath "org.jetbrains.kotlin:kotlin-android-extensions:$kotlin_version" 

模块gradle:

 kapt { generateStubs = true } dependencies { compile fileTree(dir: 'libs', include: ['*.jar']) androidTestCompile('com.android.support.test.espresso:espresso-core:2.2.2', { exclude group: 'com.android.support', module: 'support-annotations' }) compile 'com.android.support:appcompat-v7:25.0.1' testCompile 'junit:junit:4.12' compile 'com.google.dagger:dagger:2.7' kapt 'com.google.dagger:dagger-compiler:2.7' compile "org.jetbrains.kotlin:kotlin-stdlib:$kotlin_version" } 

DaggerAppComponent文件是自动生成的,所以我很困惑,为什么有一个未解决的引用错误抛出。

Solutions Collecting From Web of "Android Kotlin:错误未解决的参考:DaggerAppComponent"

我有同样的问题,但我的情况是不同于你的情况。 未解决的参考仅在生成签名的APK时出现。 这是我解决它的方法:

应用程序/的build.gradle

 kapt { generateStubs = true } dependencies { //... compile 'com.google.dagger:dagger:2.9' kapt 'com.google.dagger:dagger-compiler:2.9' } 

我现在可以无误地部署我签名的APK

 apply plugin: 'kotlin-android' apply plugin: 'kotlin-kapt' 

并在你的依赖:

 compile "com.google.dagger:dagger:2.11" compile "com.google.dagger:dagger-android:2.11" compile "com.google.dagger:dagger-android-support:2.11" kapt "com.google.dagger:dagger-compiler:2.11" kapt "com.google.dagger:dagger-android-processor:2.11" 

这个项目帮助我走上正轨: https : //github.com/damianpetla/kotlin-dagger-example