una studio generate generar firmar descargar debug correr configurar como celular aplicacion android android-studio-3.0 build-error

generate - La ejecución de Android Studio 3.0 falló para la tarea: no se puede combinar dex



generate apk android studio (23)

Resolución:

Consulte este enlace : ya que hay varias opciones para apagar la advertencia según la minSdkVersion, se establece debajo de 20 :

android { defaultConfig { ... minSdkVersion 15 targetSdkVersion 26 multiDexEnabled true } ... } dependencies { compile ''com.android.support:multidex:1.0.3'' }

Si tiene una minSdkVersion mayor que 20 en su conjunto build.gradle, use lo siguiente para cerrar la advertencia:

android { defaultConfig { ... minSdkVersion 21 targetSdkVersion 26 multiDexEnabled true } ... }

Actualice las dependencias de la siguiente manera:

dependencies { implementation ''com.android.support:multidex:1.0.3'' }

Nuevamente, la única diferencia son las palabras clave en las dependencias:

minSdkVersion debajo de 20: usar compilación

minSdkVersion por encima de 20: usar implementación

  1. Espero que esto haya sido útil, favor de votar si resolvió su problema. Gracias por su tiempo.
  2. También para obtener más información sobre por qué ocurre esto, lea el primer párrafo en el enlace, explicará a fondo por qué. y que significa esta advertencia

Android Studio estaba obteniendo un error de compilación mientras se ejecutaba la compilación con lo siguiente:

Error: Error de ejecución para la tarea '': aplicación: transformDexArchiveWithExternalLibsDexMergerForDebug''. java.lang.RuntimeException: java.lang.RuntimeException: com.android.builder.dexing.DexArchiveMergerException: no se puede combinar dex "

Mi aplicación: archivo build.gradle:

apply plugin: ''com.android.application'' android { compileSdkVersion 26 buildToolsVersion ''26.0.2'' defaultConfig { applicationId "com.pdroid.foodieschoice" minSdkVersion 16 targetSdkVersion 25 versionCode 1 versionName "1.0" testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner" } buildTypes { release { minifyEnabled false proguardFiles getDefaultProguardFile(''proguard-android.txt''), ''proguard-rules.pro'' } } } dependencies { compile fileTree(dir: ''libs'', include: [''*.jar'']) androidTestCompile(''com.android.support.test.espresso:espresso-core:2.2.2'', { exclude group: ''com.android.support'', module: ''support-annotations'' }) compile ''com.android.support.constraint:constraint-layout:1.0.2'' compile ''com.firebaseui:firebase-ui-auth:2.3.0'' testCompile ''junit:junit:4.12'' } configurations.all { resolutionStrategy { force ''com.android.support:appcompat-v7:26.0.1'' force ''com.android.support:support-compat:26.0.1'' force ''com.android.support:support-core-ui:26.0.1'' force ''com.android.support:support-annotations:26.0.1'' force ''com.android.support:recyclerview-v7:26.0.1'' } } apply plugin: ''com.google.gms.google-services''

cualquier solución

Editar: he hecho con la muestra a través del sitio de Firebase Github y resuelto


¿Estás entre el SDK o las actualizaciones de la plataforma? Si es así, complételos completamente y luego intente continuar. Normalmente actualizo los paquetes individuales que deben actualizarse para tomar la actualización completa, que a veces podría llegar a 2.5 GB. Hacer esta actualización completa a veces falla. Tuve una serie de actualizaciones de SDK una vez que actualicé a Android Studio 3.0 y recibí el error anterior ya que todos los paquetes no se habían actualizado. Una vez que actualicé todos los paquetes, el error anterior desapareció.


Cuando la versión de Android Studio es 3.0.1, Gradle Version es 4.1 y Android PluginVersion es 3.0.0, se encontrará con este problema. Luego rebajé la versión de Gradle es 3.3, Android Android es cero, no hay tal problema.


El mismo problema. He habilitado multidex: defaultConfig {applicationId "xxx.xxx.xxxx" minSdkVersion 24 targetSdkVersion 26 multiDexEnabled true

He borrado el caché, ejecuté gradle clean, rebuild, make, intenté asegurarme de que no haya conflictos en las bibliotecas importadas (eliminé todas las dependencias transitivas) e hice todas las actualizaciones. Todavía:

Error: Error de ejecución para la tarea '': aplicación: transformDexArchiveWithExternalLibsDexMergerForDebug''. java.lang.RuntimeException: com.android.builder.dexing.DexArchiveMergerException: no se puede fusionar dex

Resulta que la compilación no le gustó: implementación ''org.slf4j: slf4j-android: 1.7.21''


En mi caso, cambiar la versión de la biblioteca firebase de 2.6.0 a 2.4.2 solucionó el problema


Estaba recibiendo el mismo error y en mi caso, el error se resolvió cuando solucioné un error de compilación que estaba asociado con una variante de compilación diferente a la que estaba construyendo actualmente.

Estaba compilando la variante de compilación que estaba viendo sin problemas, pero al intentar depurar causó una app:transformDexArchiveWithExternalLibsDexMergerForDebug error app:transformDexArchiveWithExternalLibsDexMergerForDebug . Una vez que cambié para compilar la otra variante de compilación, capté mi error en el proceso de compilación y lo reparé. Esto parecía resolver mi app:transformDexArchiveWithExternalLibsDexMergerForDebug para todas las variantes de compilación.

Tenga en cuenta que este error no estaba dentro del módulo externo al que se hace referencia sino dentro de un conjunto fuente distinto de una variante de compilación que hacía referencia a un módulo externo. ¡Espero que sea útil para alguien que pueda estar viendo el mismo caso que yo!


Este error ocurre cuando agrega una biblioteca externa que puede no ser compatible con su compileSdkVersion .

Tenga cuidado cuando agregue una external library .

Pasé 2 días en este problema y finalmente se resolvió siguiendo estos pasos.

  • Asegúrese de que todas sus bibliotecas de soporte sean las mismas que compileSdkVersion de su build.gradle(Module:app) en mi caso es 26 .

  • En su categoría de configuración predeterminada, escriba multiDexEnabled true . Esta es la parte importante.

  • Ir a archivo | Configuraciones | Construcción, Ejecución, Implementación | Ejecución instantánea e intente Activar / Desactivar Ejecución instantánea para intercambio en caliente ... y haga clic en Aceptar

  • Sync tu proyecto.

  • Por último, vaya a construir | haga clic en Reconstruir proyecto .

  • Nota: Reconstruir proyecto primero limpia y luego construye el proyecto.


Esto es lo que me funciona. limpiar, preparar y correr.

cordova clean android; ionic cordova prepare andriod; ionic cordova run andriod;

Espero eso ayude.


He hecho y solucionado este problema simplemente haciendo estos trabajos en mi código

Abrir -> build.gradle Cambiar el valor de

compile ''com.google.code.gson:gson:2.6.1''

a

compile ''com.google.code.gson:gson:2.8.2''


Intenta agregar esto en gradle

android { defaultConfig { multiDexEnabled true } }


La forma más fácil de evitar el tipo de error de succión es:

-Cambie la biblioteca combilesdkversion igual que su aplicación compilesdkversion

-Cambie la versión de la biblioteca de soporte de la biblioteca igual que su build.gradle (aplicación)


Me sucedió lo mismo, descubrí que estaba en medio de la actualización a AS 3.0.1 y después de hacer la actualización, limpiar y reconstruir la aplicación, todo se solucionó.


Para el proyecto basado en Cordova, ejecute cordova clean android antes de compilar nuevamente, como sugirió @mkimmet .


Para eliminar este problema de Dex, simplemente implemente una dependencia. Este problema ocurre cuando estamos usando múltiples servicios diferentes del mismo servidor. Supongamos que estamos usando anuncios y Firestore en un proyecto y ambos tenemos un repositorio experto. así que necesitamos llamar a diferentes datos con el repositorio, necesitamos una dependencia dex para implementar. La nueva actualización Dependencia: -

implementation ''com.android.support:multidex:1.0.3''

Estoy seguro de que resolverá su problema de forma permanente


Para mí, el problema era el uso de Java 1.8 en un módulo, pero no en el módulo de la aplicación. Agregué esto a la aplicación build gradle y trabajé:

android{ compileOptions { sourceCompatibility JavaVersion.VERSION_1_8 targetCompatibility JavaVersion.VERSION_1_8 }


Para mí, lo que solucionó este error fue cambiar una línea en las dependencias de gradle de mi aplicación.

de esto :

{ minSdkVersion 17 targetSdkVersion 28 versionCode 1 versionName "1.0" testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner" multiDexEnabled true }

A esto :

implementation ''com.android.support:multidex:1.0.3''


Para mi, agregando

multiDexEnabled true

y

packagingOptions { exclude ''META-INF/NOTICE'' exclude ''META-INF/LICENSE'' exclude ''META-INF/notice'' exclude ''META-INF/notice.txt'' exclude ''META-INF/license'' exclude ''META-INF/license.txt'' }

en el archivo Build.gradle de nivel de aplicación resolvió el problema


Probé muchas soluciones como se mencionó anteriormente, incluida la multiDexEnabled true, pero nada de eso funcionó para mí.

Aquí está la solución que funcionó para mí: copie este código en el archivo app / build.gradle

configurations.all { resolutionStrategy.eachDependency { DependencyResolveDetails details -> def requested = details.requested if (requested.group == ''com.android.support'' && requested.name != ''multidex'') { details.useVersion "${rootProject.ext.supportLibVersion}" } } }

Asegúrese de ejecutar gradlew clean antes de ejecutar el código


Simplemente intente hacer un "Build -> Clean Project". Eso resolvió el problema para mí.


También asegúrese de que su aplicación esté subclasificando MultiDexApplication

import android.support.multidex.MultiDexApplication class App : MultiDexApplication()

o si no está subclasificando la clase de Aplicación, agregue a AndroidManifest.xml

<application android:name="android.support.multidex.MultiDexApplication"


Tenía esto cuando la versión de SDK solicitada no coincidía con las dependencias. Puede hacer clic en la línea resaltada y arreglarlo haciendo clic en la bombilla roja. No es necesario encontrar la versión real, solo deje que el IDE lo resuelva por usted. Y agregue Google Repo a la configuración de Maven.


Use multiDexEnabled true como se muestra a continuación.

compile(''com.google.android.gms:play-services-gcm:+'') { force = true }

y

compile(''com.google.android.gms:play-services-gcm:11.8.0'') { force = true }

Esta solución funcionó para mí.


1)Please add multiDexEnabled true 2)if you get compilation error then check your app level build.gradle weather same dependencies are implemented with different versions. 3)Remove one if you find same dependencies.

android {compileSdkVersion 28 defaultConfig {

minSdkVersion 17 targetSdkVersion 28 versionCode 1 versionName "1.0" testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner" multiDexEnabled true }

hope it works fine :) Happy Coding