دنبال کننده ها

۱۳۹۶ اسفند ۲۳, چهارشنبه

android - Error: Unresolved reference: DaggerAppComponent

[ad_1]



I've been facing this problem for 3 hours. I couldn't find any logical reason to what is happening. The problem is, Only when I use the generated Dagger classes, and after Gradle do the Build every reference to these classes became red and I get the error:




Error: Unresolved reference: DaggerAppComponent




But, If I comment out every line in the App class reference any of these generated Dagger classes. The build process completed successfully. I tried doing clean/ rebuild/ make project. but it doesn't work.
Some information about my environment:
Build.gradle:



apply plugin: 'com.android.application'

apply plugin: 'kotlin-android'

apply plugin: 'kotlin-android-extensions'

android
compileSdkVersion 26
defaultConfig
applicationId "xxxxx"
minSdkVersion 19
targetSdkVersion 26
versionCode 1
versionName "1.0"
testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"

buildTypes
release
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'


dataBinding
enabled = true



dependencies
implementation fileTree(dir: 'libs', include: ['*.jar'])

implementation "android.arch.lifecycle:extensions:1.1.0"
implementation "android.arch.lifecycle:viewmodel:1.1.0"
implementation "android.arch.lifecycle:livedata:1.1.0"
implementation "android.arch.persistence.room:runtime:1.0.0"
implementation "android.arch.lifecycle:runtime:1.1.0"

implementation "org.jetbrains.kotlin:kotlin-stdlib-jre7:$kotlin_version"

implementation 'com.android.support:appcompat-v7:26.1.0'
implementation 'com.android.support:design:26.1.0'
implementation 'com.android.support.constraint:constraint-layout:1.0.2'
implementation 'com.android.support:support-v4:26.1.0'


kapt "android.arch.lifecycle:compiler:1.1.0"
kapt "android.arch.persistence.room:compiler:1.0.0"

kapt "com.google.dagger:dagger-compiler:2.8"
compile "com.google.dagger:dagger:2.8"
compile "com.google.dagger:dagger-android:2.8"

testImplementation 'junit:junit:4.12'
androidTestImplementation 'com.android.support.test:runner:1.0.1'
androidTestImplementation 'com.android.support.test.espresso:espresso-core:3.0.1'



Kotlin version: ext.kotlin_version = '1.1.51'
Android Studio version: 3.0.1



dependencies section in Build.Gradle file for the project (not the app module):



dependencies 
classpath 'com.android.tools.build:gradle:3.0.1'
classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version"

// NOTE: Do not place your application dependencies here; they belong
// in the individual module build.gradle files



App class:



class App:Application() 
private val component:AppComponent by lazy
DaggerAppComponent.builder()
.build()

override fun onCreate()
super.onCreate()
component.inject(this)




If anyone can figure out what is the problem, it would be much appreciated.
P.S. I'm still learning Dagger2 and I'm new to Kotlin and Native development in general. I came from C# and Xamarin background.




[ad_2]

لینک منبع