Java – The program type already exists at com.google.gson.FieldAttributes

The program type already exists at com.google.gson.FieldAttributes… here is a solution to the problem.

The program type already exists at com.google.gson.FieldAttributes

My android app refuses to build with the following error:

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

My build.gradle dependencies

 dependencies {
    implementation fileTree(dir: 'libs', include: ['*.jar'])
    implementation 'com.android.support:appcompat-v7:27.1.1'
    implementation 'com.android.support:support-v4:27.1.1'
    implementation 'com.android.support:animated-vector-drawable:27.1.1'
    implementation 'com.android.support:customtabs:27.1.1'
    implementation 'com.android.support:support-media-compat:27.1.1'
    implementation 'com.android.support:design:27.1.1'
    implementation 'com.android.support.constraint:constraint-layout:1.1.2'
    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'
    api 'com.github.Steveice10:MCProtocolLib:1.12.2-2'
    api 'com.github.Steveice10:OpenNBT:1.0'
    implementation 'com.android.support:multidex:1.0.3'
    implementation 'com.google.android.gms:play-services-ads:15.0.1'
    implementation 'com.google.android.ads.consent:consent-library:1.0.6'
    implementation 'com.github.GrenderG:Prefs:1.3' //Propably this cause problem
    implementation('com.crashlytics.sdk.android:answers:1.4.2@aar') {
        transitive = true
    }
    implementation('com.crashlytics.sdk.android:crashlytics:2.9.4@aar') {
        transitive = true
    }}

It probably started happening when I added the com.github.GrenderG:Prefs dependency

Solution

Add this line to the build.gradle file.

configurations {
            all*.exclude group: 'com.google.code.gson'
        }

Related Problems and Solutions