Erro: Tipo de programa já presente: android.support.design.widget.CoordinatorLayout $ Behavior

129

Estou recebendo o seguinte erro ao criar o projeto. não utilizaram o CoordinatorLayout neste projeto. acabou de ser adicionado como uma dependência no build.gradle:

Estou usando o Android Studio 3.2 Canary 4.

LogCat

AGPBI: {"kind": "error", "text": "Tipo de programa já presente: android.support.design.widget.CoordinatorLayout $ Behavior", "sources": [{}], "tool": "D8" }: app: transformDexArchiveWithExternalLibsDexMergerForDebug FAILED FAILURE: Falha na compilação com uma exceção. * O que deu errado: Falha na execução da tarefa ': app: transformDexArchiveWithExternalLibsDexMergerForDebug'.

com.android.builder.dexing.DexArchiveMergerException: erro ao mesclar arquivos dex: /windows/Other/app/build/intermediates/transforms/dexBuilder/debug/0.jar, / windows / Other / app / build / intermediates / transforms / dexBuilder / debug / 1.jar, /windows/Other/app/build/intermediates/transforms/dexBuilder/debug/4.jar,. . ...................

/windows/Other/app/build/intermediates/transforms/dexBuilder/debug/294.jar

Tipo de programa já presente: android.support.design.widget.CoordinatorLayout $ Behavior

build.gradle

apply plugin: 'com.android.application'

apply plugin: 'kotlin-android'

apply plugin: 'kotlin-android-extensions'
apply plugin: 'kotlin-kapt'

android {
    compileSdkVersion 27
    buildToolsVersion "27.0.3"
    defaultConfig {
        applicationId "com.dagkot"
        minSdkVersion 16
        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'
            buildConfigField "String", "BASE_URL", "\"http://api.openweathermap.org/data/2.5/\""
            buildConfigField "String", "API_KEY", "\"435e9075f348868c2714fe7c6895efa5\""
        }
        debug {
        minifyEnabled false
        proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
        buildConfigField "String", "BASE_URL", "\"http://api.openweathermap.org/data/2.5/\""
        buildConfigField "String", "API_KEY", "\"xxxx\""
    }
}
}

dependencies {
    implementation fileTree(dir: 'libs', include: ['*.jar'])
    implementation 'com.android.support:appcompat-v7:27.1.0'
    implementation 'com.android.support.constraint:constraint-layout:1.0.2'
    testImplementation 'junit:junit:4.12'
    androidTestImplementation('com.android.support.test.espresso:espresso-core:3.0.1', {
        exclude group: 'com.android.support', module: 'support-annotations'
    })
    implementation"org.jetbrains.kotlin:kotlin-stdlib-jre7:$kotlin_version"


    // Dagger dependencies
    compileOnly 'org.glassfish:javax.annotation:10.0-b28'
    implementation "com.google.dagger:dagger:$rootProject.daggerVersion"
    implementation "com.google.dagger:dagger-android:$rootProject.daggerVersion"
    implementation "com.google.dagger:dagger-android-support:$rootProject.daggerVersion"
    kapt "com.google.dagger:dagger-android-processor:$rootProject.daggerVersion"
    kapt "com.google.dagger:dagger-compiler:$rootProject.daggerVersion"

    //Butterknife dependencies
    implementation 'com.jakewharton:butterknife:8.8.1'
    kapt 'com.jakewharton:butterknife-compiler:8.8.1'

    // Architecture Components Dependencies
    kapt "android.arch.lifecycle:compiler:$rootProject.lifeCycle"
    implementation "android.arch.lifecycle:extensions:$rootProject.lifeCycle"
    implementation "android.arch.lifecycle:reactivestreams:$rootProject.lifeCycle"
    implementation "com.android.support:cardview-v7:$rootProject.supportLibraryVersion"

    // Retrofit/RxJava Dependencies
    implementation "com.squareup.retrofit2:retrofit:$rootProject.retrofitVersion"
    implementation "com.squareup.retrofit2:adapter-rxjava2:$rootProject.retrofitVersion"
    implementation "com.squareup.retrofit2:converter-gson:$rootProject.retrofitVersion"
    implementation "io.reactivex.rxjava2:rxandroid:$rootProject.rxAndroidVersion"
    implementation 'com.squareup.okhttp3:logging-interceptor:3.6.0'
    implementation 'com.jakewharton.rxbinding2:rxbinding-kotlin:2.1.1'

    // GSON
    implementation "com.google.code.gson:gson:$rootProject.gsonVersion"

    // Rx Location Manager
    implementation 'io.nlopez.smartlocation:library:3.3.3'
    implementation 'io.nlopez.smartlocation:rx:3.3.1'

    //Anko Dependencies
    implementation "org.jetbrains.anko:anko-commons:$rootProject.anko_version"
    implementation "org.jetbrains.anko:anko-design:$rootProject.anko_version"
    implementation 'com.android.support:design:27.0.2'

    implementation("com.github.hotchemi:permissionsdispatcher:3.1.0") {
        // if you don't use android.app.Fragment you can exclude support for them
        exclude module: "support-v13"
    }
    kapt "com.github.hotchemi:permissionsdispatcher-processor:3.1.0"
}
Ankit Mehta
fonte
5
basta adicionar a implementação 'com.android.support:design:27.1.1' no arquivo gradle
Tushar Lathiya
1
@TusharLathiya Eu tenho um problema semelhante, mas a desclassificação funcionou para mim. Estou usando a versão 27.0.0
Eswar
Se você já instalou o firebase-ui na dependência de aplicativos, isso pode ocorrer. Passei muito tempo tentando descobrir isso! Eu nunca preciso do firebase-ui, pois estava usando o picasso para recuperar imagens do armazenamento do firebase.
Aswini Iyer #

Respostas:

214

Funcionou quando eu appcompatrebaixei a dependência do gradle de suporte , como a seguir:

implementation 'com.android.support:appcompat-v7:27.0.2'

anteriormente era

implementation 'com.android.support:appcompat-v7:27.1.0'

OU

Isso também pode ser corrigido com a adição da dependência do design de suporte da versão 27.1.0 ou superior ao nível do aplicativo build.gradle, da seguinte maneira:

implementation 'com.android.support:design:27.1.0'
Ankit Mehta
fonte
45
Depois de publicar novas versões, eles nos deixam loucos por causa de erros estranhos. : |
Nguyen Minh Binh
Na verdade, era bem oposto no meu caso. 27.0.xestava falhando, enquanto batendo a 27.1.0fez compilação projeto ... meh ...
Marcin Orlowski
2
alterá-lo para compile 'com.android.support:design:27.1.0'nas novas versões
Milad
@AnkitMehta Estou com um problema semelhante e a desclassificação não funcionou para mim.
Eswar
tente adicionar dependência de design de suporte.
Ankit Mehta
78

Enfrentei o mesmo problema, adicionei dependências de design de suporte do Android ao nível do aplicativo build.gradle

Adicione o seguinte:

implementation 'com.android.support:design:27.1.0'

no build.gradle. Agora está funcionando para mim.

Balaji Purusothaman
fonte
2
Funciona para mim. Esse problema ocorreu depois que uma biblioteca começou a usar 27.1.0 enquanto o aplicativo ainda estava usando 26.xx
Hong
Limpar / reconstruir o projeto pode ajudar se ele não corrigir o problema imediatamente. Foi o que funcionou para mim.
F3d0r
Principalmente esses erros ocorreram devido à incompatibilidade de versão. Se estiver usando appcompat, crie bibliotecas melhor para usar as versões mais recentes. Exemplo: implementação 'com.android.support:appcompat-v7:27.1.1' implementação 'com.android.support:design:27.1.1'
eranda.del 19/04/19
Olá, Você pode me ajudar, pois usei esta biblioteca para adicionar imagem no PDF github.com/TomRoush/PdfBox-Android/issues/219 e estou recebendo esse erro Tipo de programa já presente: org.spongycastle.cert.AttributeCertificateHolder What estou fazendo errado?
Priyanka Singhal
32

Pode ser a causa de uma biblioteca, eu enfrentei por causa do Glide.

isso foi

implementation 'com.github.bumptech.glide:glide:4.7.1'

Então eu adicionei exclude group: "com.android.support"E torna-se

implementation ('com.github.bumptech.glide:glide:4.7.1') {
        exclude group: "com.android.support"
    }
Kishan Solanki
fonte
1
Eu adicionei esta linha a todas as minhas 3 dependências que usei. Resolveu o meu erro. Obrigado.
KhanStan99
13

Verifique se essas duas são da mesma versão no arquivo build.gradle no nível do aplicativo

    implementation 'com.android.support:appcompat-v7:27.1.1'
    implementation 'com.android.support:design:27.1.1'

Eu acho que isso deveria resolver o problema

James Idowu
fonte
12

Use a supportLibraryversão mais recente 27.1.1para resolver o problema. trabalhou para mim. (muitas correções de erros incluídas - consulte o registro de alterações )

LOG_TAG
fonte
1
Ainda estou enfrentando alguns erros como:Error:Program type already present: org.apache.http.impl.auth.HttpEntityDigester
Trinity
implementação 'com.android.support:design:27.1.0 adicione este stackoverflow.com/questions/49112190/…
LOG_TAG
9

Pessoalmente, adiciono a seguinte linha ao meu app / build.gradle:

implementation "com.android.support:design:${rootProject.ext.supportLibVersion}"

Com essa sintaxe, a versão é dinâmica.

Jérôme Legrand
fonte
6

Estou usando o android studio 3.0 e atualizo a dependência do padrão de design de 26.0.1 para 27.1.1 e o erro desapareceu agora.

Adicionar Following in gradle implementation 'com.android.support:design:27.1.1'

Dhruvisha
fonte
6

Usar

implementation 'com.android.support:appcompat-v7:27.1.1'

Não use como

implementation 'com.android.support:appcompat-v7:27.+'

Pode causar um erro e não usar uma versão mais antiga que essa.

ou evento não faça assim

implementation 'com.android.support:appcompat-v7:27.1.1'
implementation 'com.android.support:design:27.1.1' 

etc ... número de bibliotecas e depois

implementation 'com.android.support:appcompat-v7:27.+'

Na mesma biblioteca, mas com uma versão diferente, pode ocorrer um erro.

Deven
fonte
5

Eu rebaixo o suporte

previously it was
implementation 'com.android.support:appcompat-v7:27.0.2'

Use-o

implementation 'com.android.support:appcompat-v7:27.1.0'

implementation 'com.android.support:design:27.1.0'

Its Working Happy Codng

Keshav Gera
fonte
7
Parece mais um upgrade se você for de 27.0.2 para 27.1.0
Denny
4

Atualização Importante

As bibliotecas de suporte do Android não serão atualizadas depois 28.0.0. De acordo com as Notas de versão da biblioteca de suporte -

Esta será a última versão do pacote sob o pacote android.support, e os desenvolvedores são encorajados a migrar para o AndroidX 1.0.0 .

Portanto, use as bibliotecas de suporte do AndroidX . No seu caso, a biblioteca de design agora está disponível no pacote de materiais.

dependencies {
    implementation 'com.google.android.material:material:1.0.0' // instead of design
    implementation 'androidx.appcompat:appcompat:1.0.2' // instead of support-v7
}

Eu coloquei as versões mais recentes na dependência. Você pode verificar a versão mais recente aqui no momento da leitura.

Mensagens úteis:

  1. Introdução e integração AndroidX
  2. Saiba mais sobre o Jetifier (mecanismo por trás da migração do AndroidX)
  3. Alguns fazer e não fazer
Khemraj
fonte
2

Eu tive esse problema também; e resolvi que dessa maneira:

configurations.all {
resolutionStrategy.eachDependency { DependencyResolveDetails details ->
    def requested = details.requested
    if (requested.group == 'com.android.support') {
        if (!requested.name.startsWith("multidex")) {
            details.useVersion '26.0.1'
        }
    }
  }
}

tenha cuidado meu SDk min tinha 26 anos, você precisa alterá-lo com o seu!

محمد
fonte
2

"O tipo de programa já existe" Remova o conteúdo do diretório / build, ele tem algum problema com Dex (?) Com os arquivos binários gerados. Chegando a essas respostas como você, elas ajudaram a resolver esse problema, mas criaram muitas outras. A remoção do conteúdo da compilação funciona para todos.

Vitali Pom
fonte
1

Sei que é uma resposta tardia, mas tive o mesmo problema e minha solução foi apenas adicionar implementation 'com.android.support:design:28.0.0ou qualquer biblioteca de design de suporte acima !!

raed
fonte
1

Isso pode acontecer quando uma biblioteca é carregada no gradle várias vezes. Geralmente através de outras bibliotecas conectadas.

Remova uma implementação desta biblioteca em build.gradle

Em seguida, Build -> Clear project

e você pode executar a montagem)

Дмитрий Гаврилов
fonte
0

Como a atualização mais recente do Android não suporta a palavra-chave 'compilar', use a 'implementação' no lugar no arquivo build.gradle do módulo .

E verifique cuidadosamente em build.gradle a dependência com o sinal + como este.

implementation 'com.android.support:support-v4:28.+'

Se houver dependências como essa, basta atualizá-las com uma versão específica. Depois disso:

  1. Sincronizar gradle.
  2. Limpe seu projeto.
  3. Reconstrua o projeto.
amit pandya
fonte
0

Se alguma das respostas mencionadas aqui não funcionar, vá para Arquivo> Invalidar capturas / reiniciar

Ssubrat Rrudra
fonte
1
não ajuda :(
Jorgesys
0

A solução para isso é remover a seguinte dependência:

implementation 'com.android.support:design:26.1.0'

coloque dependências gerais como:

dependencies {
    implementation fileTree(include: ['*.jar'], dir: 'libs')
    //noinspection GradleCompatible
    implementation 'com.android.support:appcompat-v7:27.1.1'
    implementation 'com.android.support:support-compat:26.1.0'
    implementation 'com.android.support:multidex:1.0.3'    
    implementation 'com.android.support:support-v4:26.1.0'
    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.facebook.android:audience-network-sdk:4.99.1'
}
Pradeep Sheoran
fonte
0

Adicionando isso ao projeto, foi gradle.properties corrigido para nós:

android.enableJetifier=true
android.useAndroidX=true
Pitel
fonte
0

Seu script de construção deve corresponder às dependências do aplicativo build.gradle.

ext {
        buildToolsVersion = "27.0.3"
        minSdkVersion = 16
        compileSdkVersion = 27
        targetSdkVersion = 26
        supportLibVersion = "27.1.1"
    }


dependencies {
    .................
    ...................

    implementation 'com.android.support:support-v4:27.1.0'
    implementation 'com.android.support:design:27.1.0'
    ................
    ...........
}

se você desejar fazer o downgrade de dependências, também faça o downgrade de supportLibVersion e buildToolsVersion.

user3143487
fonte
0

Eu também enfrentei o mesmo problema. Mas então percebi que as versões que eu estou usando das bibliotecas de suporte não eram as mesmas.

Depois que fiz o mesmo, o erro desapareceu.

No seu caso

implementation 'com.android.support:appcompat-v7:27.1.0'
implementation 'com.android.support:design:27.0.2'

não são iguais, então você apenas desclassificou o appcompat para

implementation 'com.android.support:appcompat-v7:27.0.2'

portanto, seu problema foi resolvido.

Mas você também poderia ter resolvido se pudesse atualizar a versão do design de suporte para

implementation 'com.android.support:design:27.1.0'
Ankush Joshi
fonte
0

Vá para o diretório em que você coloca bibliotecas adicionais e exclua bibliotecas duplicadas.

BlackGraper
fonte
-1

Foram alteradas todas as dependências para compilar em vez de implementação, depois reconstruo o projeto sem erros. Depois, voltei à implementação em vez de deixá-la como compilada.

Steve White
fonte