简体   繁体   中英

Error Program type already present: com.google.common.util.concurrent.ListenableFuture

I'm need to use two guava classes:

import com.google.common.collect.ImmutableMap;
import com.google.common.collect.ImmutableSet;

But i'm getting this, when build\\rebuild project:

Program type already present: com.google.common.util.concurrent.ListenableFuture
Message{kind=ERROR, text=Program type already present: com.google.common.util.concurrent.ListenableFuture, sources=[Unknown source file], tool name=Optional.of(D8)}

This is my build.gradle file:

also i'm tried to write exclude, but maybe i'm doing this wrong?

And i'm tried to delete crashlytics logs, tried to delete gms-services, but nothing helps

apply plugin: 'com.android.application'
apply plugin: 'io.fabric'


repositories {
    maven { url 'https://maven.google.com' }
    maven { url 'https://jitpack.io' }
    mavenCentral()
    jcenter()
}
android {
    useLibrary 'org.apache.http.legacy'
    lintOptions {

        checkReleaseBuilds false

    }
    packagingOptions {
        exclude 'META-INF/proguard/androidx-annotations.pro'
    }
    compileSdkVersion 27
    defaultConfig {
        applicationId "com.jinga.updater"
        minSdkVersion 26
        targetSdkVersion 27
        versionCode 16
        versionName "2.1"

        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 {
    def archLifecycleVersion = '1.1.1'
    def room_version = "1.1.1"
    def versions_work = "1.0.0-alpha09"


    implementation fileTree(include: ['*.jar'], dir: 'libs')
    implementation 'com.android.support:appcompat-v7:27.1.1'
    implementation 'com.novoda:merlin:1.1.7'
    implementation 'com.android.support.constraint:constraint-layout:1.1.2'
    implementation 'com.android.support:support-v4:27.1.1'

    implementation 'com.android.support:design:27.1.1'
    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 'io.reactivex.rxjava2:rxandroid:2.0.2'

    implementation 'com.squareup.retrofit2:retrofit:2.4.0'
    implementation 'com.squareup.retrofit2:adapter-rxjava2:2.4.0'
    implementation 'com.squareup.retrofit2:converter-gson:2.4.0'
    implementation group: 'com.google.guava', name: 'guava', version: '23.5-android'

    implementation "android.arch.persistence.room:runtime:$room_version"
    annotationProcessor "android.arch.persistence.room:compiler:$room_version"

    // Room components
    androidTestImplementation "android.arch.persistence.room:testing:$room_version"

    // Lifecycle components
    implementation "android.arch.lifecycle:extensions:$archLifecycleVersion"
    annotationProcessor "android.arch.lifecycle:compiler:$archLifecycleVersion"



    implementation 'com.firebase:firebase-jobdispatcher:0.8.5'
    implementation 'com.google.firebase:firebase-core:16.0.3'
    implementation 'com.google.firebase:firebase-messaging:17.3.1'

    implementation group: 'commons-io', name: 'commons-io', version: '2.5'

    implementation 'com.jakewharton:butterknife:8.8.1'
    annotationProcessor 'com.jakewharton:butterknife-compiler:8.8.1'
    implementation 'com.google.code.gson:gson:2.8.5'
    implementation 'com.crashlytics.sdk.android:crashlytics:2.9.4'
    implementation 'com.android.support:recyclerview-v7:27.1.1'

    implementation 'com.yandex.android:mobmetricalib:3.2.2'

    implementation 'com.github.nkzawa:socket.io-client:0.3.0'
    implementation 'com.squareup.picasso:picasso:2.71828'
    implementation 'com.android.support:cardview-v7:27.1.1'
    //circleImage
    implementation 'com.orhanobut:dialogplus:1.11@aar'

    implementation 'net.cachapa.expandablelayout:expandablelayout:2.9.2'

    implementation 'com.liulishuo.okdownload:okdownload:1.0.4'
    implementation "android.arch.work:work-runtime:$versions_work"

}

apply plugin: 'com.google.gms.google-services'

What i should to do to solve this issue, i see some examples on stack with work-manager, but they dont help me

I was having the same problem, and the cause: I was using this lib:

implementation "android.arch.persistence.room:guava:1.1.1"

I don't know why, it returned to me an error like yours, but try to remove this and find another solution

I found this little "pseudo" api useful:

https://mvnrepository.com/artifact/com.google.guava/listenablefuture/9999.0-empty-to-avoid-conflict-with-guava

Ie adding

api 'com.google.guava:listenablefuture:9999.0-empty-to-avoid-conflict-with-guava'

fixed my build problems in a elegant, though obscure way.

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM