ClassNotFoundException después de actualizar a ADT 18

Desde que actualizé ADT a 19, empecé a recibir el siguiente error. El problema ocurre siempre que inicie mis aplicaciones. Revisé todo el post anterior relacionado con esto, pero parece que ninguno de ellos ayuda. Cualquier idea sería muy apreciada …

Mi configuración

  1. Tengo actualmente ADT 18, SDK 19, elcipse en Windows 7 64bit.
  2. Utilizo el proyecto de la biblioteca que hace ashare.jar y todos mis tarros externos (es decir, dropbox, codec común) están en la carpeta "libs" en el proyecto de la biblioteca (Ashare).
  3. No uso proguard.

Cómo vemos este problema.

  1. Crear apk en eclipse> {MyProject}> Haga clic con el botón derecho> Herramientas de Android> Exportar paquete de aplicación firmado
  2. Instale el apk en el emulador o dev.phone usando "adb install XXX.apk"
  3. Inicie la aplicación. Entonces, BOOM. Arrojar el error.

Algunas cosas notables son

  1. Comenzó a suceder después de actualizar a ADT en mi eclipse a la versión 18
  2. Sucede solo cuando hago apk firmado y lo ejecuto en emulador o dev.phone.
  3. No veo problema si ejecuto mi aplicación usando {MiProyecto}> Haga clic con el botón derecho> Ejecutar como> Aplicación Android
  4. Cuando revisé dentro de classes.dex, veo que faltan algunas clases. No estoy seguro, pero creo que el proceso de creación no incluye todas las clases en classes.dex
  5. Durante la exportación, no hay error en la consola de eclipse (uso la opción detallada en Android> Configuración> Configuración de salida de compilación)

Excepción de Java

05-07 08:52:48.336: D/AndroidRuntime(3055): Shutting down VM 05-07 08:52:48.336: W/dalvikvm(3055): threadid=1: thread exiting with uncaught exception (group=0x40a3e1f8) 05-07 08:52:48.340: E/AndroidRuntime(3055): FATAL EXCEPTION: main 05-07 08:52:48.340: E/AndroidRuntime(3055): java.lang.RuntimeException: Unable to instantiate activity ComponentInfo{com.acj0.barcodeexpdemo/com.acj0.barcodeexpdemo.Launcher}: java.lang.ClassNotFoundException: com.acj0.barcodeexpdemo.Launcher 05-07 08:52:48.340: E/AndroidRuntime(3055): at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:1880) 05-07 08:52:48.340: E/AndroidRuntime(3055): at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:1981) 05-07 08:52:48.340: E/AndroidRuntime(3055): at android.app.ActivityThread.access$600(ActivityThread.java:123) 05-07 08:52:48.340: E/AndroidRuntime(3055): at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1147) 05-07 08:52:48.340: E/AndroidRuntime(3055): at android.os.Handler.dispatchMessage(Handler.java:99) 05-07 08:52:48.340: E/AndroidRuntime(3055): at android.os.Looper.loop(Looper.java:137) 05-07 08:52:48.340: E/AndroidRuntime(3055): at android.app.ActivityThread.main(ActivityThread.java:4424) 05-07 08:52:48.340: E/AndroidRuntime(3055): at java.lang.reflect.Method.invokeNative(Native Method) 05-07 08:52:48.340: E/AndroidRuntime(3055): at java.lang.reflect.Method.invoke(Method.java:511) 05-07 08:52:48.340: E/AndroidRuntime(3055): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:784) 05-07 08:52:48.340: E/AndroidRuntime(3055): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:551) 05-07 08:52:48.340: E/AndroidRuntime(3055): at dalvik.system.NativeStart.main(Native Method) 05-07 08:52:48.340: E/AndroidRuntime(3055): Caused by: java.lang.ClassNotFoundException: com.acj0.barcodeexpdemo.Launcher 05-07 08:52:48.340: E/AndroidRuntime(3055): at dalvik.system.BaseDexClassLoader.findClass(BaseDexClassLoader.java:61) 05-07 08:52:48.340: E/AndroidRuntime(3055): at java.lang.ClassLoader.loadClass(ClassLoader.java:501) 05-07 08:52:48.340: E/AndroidRuntime(3055): at java.lang.ClassLoader.loadClass(ClassLoader.java:461) 05-07 08:52:48.340: E/AndroidRuntime(3055): at android.app.Instrumentation.newActivity(Instrumentation.java:1023) 05-07 08:52:48.340: E/AndroidRuntime(3055): at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:1871) 05-07 08:52:48.340: E/AndroidRuntime(3055): ... 11 more 

ACTUALIZACIÓN 5/7/2012

  • Todos mis tarros están en la carpeta "libs" del proyecto de la Biblioteca y veo todos ellos incluidos en "Android Dependencies"

ACTUALIZACIÓN 5/18/2012 – SOLUCIÓN TEMPORAL

  • Encontré una solución temporal. Justo antes de ejecutar "Exportar paquete de aplicación firmado", hice "Limpiar" SIN "construir automáticamente" opción marcada. Entonces, no veo el error más. No sé por qué funciona. Si usted tiene alguna idea, por favor hágamelo saber.

Pon tus tarros externos en el directorio libs. Puedes echar un vistazo a este enlace

Tuve el mismo problema, aunque lo hice todo como se describe en el enlace de lujop mencionado . Aquí está lo que falta:

  1. Haga clic derecho en su proyecto> Construir ruta de acceso> Configurar ruta de construcción …
  2. Haga clic en la pestaña "Ordenar y exportar"
  3. Marque las casillas de verificación junto a las bibliotecas (Android xxx, Android Dependencies) y otros proyectos a los que se está refiriendo
  4. Limpie su proyecto
  5. Eso debería ser

¡Espero que eso ayude!

Tengo el mismo problema.

Btwsolution: ref: Cómo arreglar el "NoClassDefFoundError" con ADT 17 http://android.foxykeep.com/dev/how-to-fix-the-classdefnotfounderror-with-adt-17

Tuve esto también. Aquí está mi solución. Según aquí: http://android.foxykeep.com/dev/how-to-fix-the-classdefnotfounderror-with-adt-17

Haz allí no hay "Bibliotecas Referenciadas". Si se hace clic con el botón derecho en todos ellos y se quita de la ruta de construcción. La carpeta ahora debe haber desaparecido y sólo debe quedar con "Dependencias de Android"

Esto me llevó nueces así como para un día entero, sólo para darse cuenta de que el nombre de la aplicación de tonto en manifiesto estaba mal. Para el nombre de la aplicación que tenía: android: name = "com.diack.locdatafeeds"

Me faltaba mi actividad principal android: name = "com.diack.locdatafeeds.Mainactivity"

Espero que ayude a alguien

  • Constant 'Running Android Lint' Falló, nullpointerexception apareciendo en Eclipse (pero no parece ser mi código)
  • No se puede crear una nueva aplicación android en eclipse
  • Android Dependencies hace referencia a una biblioteca no existente google-play-services_lib.jar
  • RoboLectric y Android en Eclipse (ADVERTENCIA: no hay valor de propiedades del sistema para ro.build.date.utc)
  • Estoy recibiendo el mensaje: Desafortunadamente "algunos chinos" ha parado
  • ¿Por qué no puedo anular onConfigurationChanged (Configuration)?
  • Cómo excluir archivos en carpeta "/ res" de un proyecto Android Eclipse
  • ¿Cómo se hace una versión de lanzamiento androide firmado y obfuscated desde dentro de eclipse?
  • ¿Cómo exportan jarras de un proyecto de biblioteca a proyectos de referencia en Eclipse?
  • cómo obtener todos los archivos de audio de la tarjeta sd Android
  • Intentando actualizar ADT - recibiendo error de "dependencia en conflicto"
  • FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.