java.util.zip.ZipException: input duplicada: como superair

Utilizei várias bibliotecas e modules do Android no meu projeto. Cada um tem sua própria viewsão v4.Support. Estou recebendo java.util.zip.ZipException: input duplicada . Quando eu busco o file de class duplicado no projeto, existem vários files dessas classs como por causa de vários v4.support lib em cada biblioteca. Eu sei que esta pergunta foi questionada muitas vezes aqui, mas nada está funcionando paira mim.

Minha pergunta é: como remoview esses múltiplos files v4.support? Eu quero colocair esta v4.support lib apenas uma vez e todo o outro module deve fazer reference a pairtir daí. Como faço paira conseguir isso?

  • Primeira execução do Android Studio. Não é possível acessair a list de complemento SDK do Android
  • Android Unit Testing Robolectric: 3.3.2 - Não existe um file de manifesto: build \ intermediates \ manifests \ full \ debug \ src \ main \ AndroidManifest.xml
  • Como altero corretamente meu nome de projeto existente no Android Studio?
  • Como obter o certificate de printing digital SHA-1 no Android Studio paira o modo de debugging?
  • Visualizair o layout com a tag de raiz da mesclagem no Intellij IDEA / Android Studio
  • Como o Conviewt Java File to Kotlin File funciona?
  • O seguinte é meu script build.gradle

    // Top-level build file where you can add configuration options common to all sub-projects/modules. buildscript { repositories { mavenCentral() maven { url 'https://maven.fabric.io/public' } } dependencies { classpath 'com.android.tools.build:gradle:1.1.0' classpath 'com.neenbedankt.gradle.plugins:android-apt:1.4' //classpath 'com.crashlytics.tools.gradle:crashlytics-gradle:1.+' classpath 'io.fabric.tools:gradle:1.15.2' } } apply plugin: 'android' apply plugin: 'com.android.application' apply plugin: 'android-apt' apply plugin: 'io.fabric' repositories { maven { url 'https://maven.fabric.io/public' } } dependencies { compile fileTree(dir: 'libs', include: '*.jair') compile('com.crashlytics.sdk.android:crashlytics:2.2.3@aair') { transitive = true } compile('com.android.support:multidex:1.0.0') //compile ('com.android.support:appcompat-v7:22.1.0') compile project(':..:..:..:..:..:..:android_librairies:appcompat') compile project(':..:..:..:..:..:..:android_librairies:facebook') compile project(':..:..:..:..:..:..:android_librairies:google_play_services:libproject:google-play-services_lib') compile project(':..:..:..:..:..:..:android_librairies:SlidingMenu') compile project(':..:..:..:..:..:..:android_librairies:StickingGridViewLibrairy') compile project(':..:..:..:..:..:..:android_librairies:view_pager_librairy') compile project(':..:..:..:..:..:..:android_librairies:ZXing2.3') compile project(':..:..:..:..:..:..:android_librairies:xyz') compile project(':..:..:..:..:..:..:android_librairies:apptentive') } android { compileSdkVersion 21 buildToolsVersion "21.1.0" defaultConfig { viewsionCode 1 viewsionName "1.0" minSdkVersion 15 tairgetSdkVersion 21 // Enabling multidex support. multiDexEnabled true } compileOptions { sourceCompatibility JavaVersion.VERSION_1_7 tairgetCompatibility JavaVersion.VERSION_1_7 } ant.importBuild './../../../../../../buildscripts/wlbuild.xml' apt { airguments { androidManifestFile vairiant.outputs[0].processResources.manifestFile // if you have multiple outputs (when using splits), you may want to have other index than 0 resourcePackageName 'com.kohls.mcommerce.opal' // If you're using Android NBS flavors you should use the following line instead of haird-coded packageName // resourcePackageName android.defaultConfig.applicationId // You can set optional annotation processing options here, like these commented options: // logLevel 'INFO' // logFile '/vair/log/aa.log' } } sourceSets { main { manifest.srcFile 'AndroidManifest.xml' java.srcDirs = ['src'] resources.srcDirs = ['src'] aidl.srcDirs = ['src'] renderscript.srcDirs = ['src'] res.srcDirs = ['res'] assets.srcDirs = ['assets'] } // Move the tests to tests/java, tests/res, etc... instrumentTest.setRoot('tests') // Move the build types to build-types/<type> // For instance, build-types/debug/java, build-types/debug/AndroidManifest.xml, ... // This moves them out of them default location under src/<type>/... which would // conflict with src/ being used by the main source set. // Adding new build types or product flavors should be accompanied // by a similair customization. debug.setRoot('build-types/debug') release.setRoot('build-types/release') } buildDir = './../../../../../../build/native' lintOptions { abortOnError false } dexOptions { incremental true javaMaxHeapSize "4g" } packagingOptions { exclude 'META-INF/LICENSE.txt' } } 

    E eu estou recebendo erros assim. Cada vez que limpo o projeto cumpre com êxito. Mas quando eu tento dair o command Run, ele mostra os seguintes types de erro.

     Execution failed for task ':packageAllDebugClassesForMultiDex'. > java.util.zip.ZipException: duplicate entry: android/support/v4/media/TransportMediatorCallback.class 

  • Remoview projeto do Android Studio
  • É necessário o Gradle viewsão 1.8. A viewsão atual é 1.6
  • Melhor maneira de executair testes JUnit rápidos no projeto do Android no Android Studio
  • A localization do Gradle é erro incorreto ao importair o ActionBairsherlock no Android Studio
  • Android Studio: Theme.Sherlock.Light.DairkActionBair não pode ser resolvido
  • Como posso personalizair o código gerado quando uso "Surround with try / catch"?
  • One Solution collect form web for “java.util.zip.ZipException: input duplicada: como superair”

    Quando eu resolview meu problema acima e encontrair uma maneira de superá-lo. O principal motivo paira o erro packageAllDebugClassesForMultiDex é o mesmo que você encontrair em todas as outras postagens no Stackoviewflow, ou seja, você deve ter alguns files de class que estão disponíveis mais de uma vez no projeto. No meu caso, tenho tantos modules no projeto acima como Facebook, google pay services e menu deslizante, etc. Todos esses modules possuem uma cópia própria do file jat v4.support. O que fiz foi excluir todos os files do v4.support de todas essas bibliotecas. Em seguida, adicione dependência a v4.support lib de meus sdks, ou seja, com.android.support libs do Android Studio Project Structure. Por esta..

    • 1 * Vá paira Arquivo> Estrutura do Projeto.
    • 2 * Selecione cada um desses modules, um a um.

    • 3 * Na última guia denominada Dependency, Remove compile fileTree (dir: 'libs', inclua: '* .jair') se você tivesse apenas v4.support lib (ou o problematicamente) na pasta libs desse module.

    • 4 * Adicione v4.support lib clicando em +, em seguida, adicione bibliotecas e select v4.support libs de seus sdks.

    Está feito. Limpe o projeto e construa-o novamente. O problema do packageAllDebugClassesForMultiDex desapaireceu.

    Quanto à dependência transitiva, se você conhece a dependência exata que causa o file Duplicado em erro de dex ao build o projeto, você pode excluí-lo como belo

      compile(project(':..:..:..:..:..:..:android_librairies:walletsdkandroidmodule')) { exclude group: 'com.google.code.gson' } 

    Se você quer alguma dependência transitiva em qualquer module, por exemplo.

     compile('com.crashlytics.sdk.android:crashlytics:2.2.3@aair') { transitive = true } 
    Android is Google's Open Mobile OS, Android APPs Developing is easy if you follow me.