No se puede ejecutar dex: varios archivos dex definen Lcom / facebook / android / AsyncFacebookRunner $ 1;

Tengo una aplicación para Android, que llama a un jar lib decir b.jar. Este b.jar lib. Entonces se llama facebook sdk lib. Cuando compile mi aplicación en esta situación, siempre dice

No se puede ejecutar dex: varios archivos dex definen Lcom / facebook / android / AsyncFacebookRunner $ 1; La conversión al formato de Dalvik falló: No se puede ejecutar dex: Múltiples archivos dex definen Lcom / facebook / android / AsyncFacebookRunner $ 1;

He utilizado algunos días para que funcione, sin embargo, no he abordado este problema. ¿Alguien sabe cómo resolver este problema?

3 Solutions collect form web for “No se puede ejecutar dex: varios archivos dex definen Lcom / facebook / android / AsyncFacebookRunner $ 1;”

Vaya a las propiedades del proyecto y, a continuación, Java construir la ruta de acceso -> Bibliotecas -> Eliminar las dependencias de Android y Aceptar a continuación, ejecutar su proyecto

Referido desde: https://stackoverflow.com/a/15247670/1585773

Funcionó perfectamente para mí.

Todas las respuestas son un trabajo alrededor. No resuelven la causa raíz del problema. Si observa la estructura de su proyecto, hay un proyecto FacebookSDK y su proyecto. En ambos proyectos, tiene el paquete com.facebook.android (primer archivo java AsyncFacebookRunner), que tiene los mismos archivos java incluidos. Obviamente múltiples archivos dex definirán los archivos de clase y obtendrá error.

Solución: quite el com.facebook.android de su proyecto principal (no FacebookSDK).

Para mí esto fue causado por un conflicto con el SDK de AddThis, puesto que el SDK de AddThis incluye una copia parcial del SDK de Facebook incorporado en él. Y así la clase com/facebook/android/AsyncFacebookRunner se definió dos veces.

Pude resolver esto usando estas respuestas:

Android AddThis sdk + Facebook sdk no se construirá en Android Studio

Android Studio – App Crashing en AddThis.jar – Mensaje "Fuentes no encontradas"

Específicamente, al usar este paso de la segunda respuesta:

Utilizó el comando zip -d addthis0.0.8.jar com/facebook/* en Terminal para eliminar los archivos de Facebook de addthis0.0.8.jar

Desde que estoy usando Eclipse, no necesité hacer ninguno de los otros pasos en esas respuestas.

  • Android: ¿Es posible dibujar una vista en la parte superior del mapa como una superposición
  • Gradle: Cómo crear dos aplicaciones para cada sabor con diferentes carpetas de activos:
  • método "onClick" en butterknife no es un trabajo?
  • Excepción en el complemento de Android del complemento
  • Atascado con diseño de SQL android utilizando SQLite y Group By
  • Cómo incrementar el tiempo en 1 hora
  • Obtener boolean de la base de datos utilizando Android y SQLite
  • Java.lang.ClassNotFoundException: net.sourceforge.jtds.jdbc.Driver En Android
  • AsyncTask con rotación de pantalla - onRetainNonConfigurationInstance obsoleta
  • ArrayList.Remove no funciona la primera vez que se invoca
  • Uso de matrices en firebase
  • FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.