Android Kotlin:错误未解决的参考:DaggerAppComponent
问题描述:
我已经安装Kotlin插件到现有的Dagger 2项目中。在Kotlin安装之前,我没有使用Dagger的问题。不过,现在的编译器抱怨:Android Kotlin:错误未解决的参考:DaggerAppComponent
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文件自动,所以我很困惑,为什么有是一个未解决的引用错误抛出。
答
我有同样的问题,但我的情况比你的不同。未解决的参考仅在生成签名的APK时出现。这是我如何解决它:
应用/的build.gradle
kapt {
generateStubs = true
}
dependencies {
//...
compile 'com.google.dagger:dagger:2.9'
kapt 'com.google.dagger:dagger-compiler:2.9'
}
我现在可以没有错误
答
apply plugin: 'kotlin-android'
apply plugin: 'kotlin-kapt'
而且在你的依赖部署我签署APK:
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"
你解决你的问题?什么问题? –
打开'Gradle Console',然后点击'Run with --stacktrace'来显示更多日志(有关错误的更多详细信息) – Sally