Я столкнулся с проблемой реализации Dagger - PullRequest
0 голосов
/ 15 сентября 2018

Я реализовал полную реализацию кинжала, как добавлено компонент, обеспечивает, модуль и Внедрить и в конце я сталкиваюсь с вопрос любезно предложите решение

Program type already present: dagger.internal.codegen.DaggerStreams$$Lambda$12  

вот код gradle

android {
    compileSdkVersion 27
    defaultConfig {
        applicationId "app.rxjavaexample.com.daggerexample"
        minSdkVersion 15
        targetSdkVersion 27
        versionCode 1
        versionName "1.0"
        testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"
    }
    buildTypes {
        release {
            minifyEnabled false
            proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
        }
    }
    compileOptions {
        sourceCompatibility JavaVersion.VERSION_1_8
        targetCompatibility JavaVersion.VERSION_1_8
    }
}

dependencies {
    implementation fileTree(dir: 'libs', include: ['*.jar'])
    implementation 'com.android.support:appcompat-v7:27.0.2'
    implementation 'com.android.support.constraint:constraint-layout:1.1.3'
    testImplementation 'junit:junit:4.12'
    androidTestImplementation 'com.android.support.test:runner:1.0.2'
    androidTestImplementation 'com.android.support.test.espresso:espresso-core:3.0.2'

    implementation 'com.google.dagger:dagger:2.16'
    implementation 'com.google.dagger:dagger-compiler:2.16'
    implementation 'com.android.support:design:27.0.2'
    annotationProcessor 'com.google.dagger:dagger-compiler:2.16'
    implementation 'com.android.support:recyclerview-v7:27.0.2'
}

Ответы [ 4 ]

0 голосов
/ 17 июня 2019

проблема решена после удаления следующей ссылки и добавления ее в файл Gradle

implementation 'com.google.dagger:dagger-compiler:2.17'
0 голосов
/ 15 сентября 2018

Удалить эту строку:

implementation 'com.google.dagger:dagger-compiler:2.16'
0 голосов
/ 14 июня 2019

Проблема возникает из-за конфликтов зависимостей Кинжал 1 и Кинжал 2, имеют две опции

  1. Кинжал 1 и Кинжал 2 живут вместе Попробуйте это

2. Переход на Dagger 2 (лучшее решение, потому что Dagger v1 устарел)

измените зависимости gradle на

implementation 'com.google.dagger:dagger-android:2.17'
implementation 'com.google.dagger:dagger-android-support:2.17'
annotationProcessor 'com.google.dagger:dagger-android-processor:2.17'
//default dependency
annotationProcessor 'com.google.dagger:dagger-compiler:2.17'
0 голосов
/ 15 сентября 2018
 annotationProcessor 'com.google.dagger:dagger-compiler:2.15'

изменить версию на 2.15, возможно, будет работать и изменить реализацию для компиляции для кинжала

...