NoClassDefFoundError – Rechazo de re-init en la clase con fallo anterior

Por favor, alguien me explique qué significa este error y cómo evitarlo.

Después de un tiempo mi aplicación Force Cierra debido a este error:

09-28 12:53:45.746 I/dalvikvm(29489): Rejecting re-init on previously-failed class Lcom/bartat/android/ui/task/AsyncTaskExt; v=0x0 09-28 12:53:45.748 D/AndroidRuntime(29489): Shutting down VM 09-28 12:53:45.755 I/am_crash( 1146): [29489,com.bartat.android.secret,572996,java.lang.NoClassDefFoundError,com.bartat.android.ui.task.AsyncTaskExt,CommandsActivity.java,726] 09-28 12:53:45.755 I/am_finish_activity( 1146): [1079225264,123,com.bartat.android.secret/.CommandsActivity,crashed] 09-28 12:53:45.750 W/dalvikvm(29489): threadid=1: thread exiting with uncaught exception (group=0x40015560) 09-28 12:53:45.752 E/AndroidRuntime(29489): FATAL EXCEPTION: main 09-28 12:53:45.752 E/AndroidRuntime(29489): java.lang.NoClassDefFoundError: com.bartat.android.ui.task.AsyncTaskExt 

Este problema no se pudo resolver reinstalando la aplicación.

Si cambio de nombre AsyncTaskExt a AsyncTaskExt2 por ejemplo, entonces funciona de nuevo por mucho tiempo. Pero después de algunas semanas / meses empezó a obtener este error de nuevo.

Qué significa eso? ¿Por qué se lanza y cómo evitarlo sin cambiar el nombre de la clase?

Por favor, ayúdame, Tamás

Esto ocurre cuando una clase no se puede cargar por una variedad de razones. Desafortunadamente, el nuevo tiempo de ejecución de ART no registra suficiente información sobre la causa de esto. Si usted puede conseguir el asimiento de un dispositivo androide más viejo con Dalvik usted verá la registración diferente, revelando generalmente la ofensa con más precisión.

La última vez que lo vi en vivo tuve que lidiar con un archivo JAR que realmente no incluía o listar sus dependencias, por lo que agregar la biblioteca dependiente derecha al archivo gradle lo resolvió. El problema más grande es calcular qué clases faltaron – algo que los registros / descompilación / documentación de dalvik podrían decirle.

Hay muchas otras razones por las que las clases no se pueden cargar en la totalidad del lenguaje Java, por lo que esta causa específica podría no aplicarse universalmente.

Debes agregar uses-library en tu AndroidManifest.xml

Empecé a tener este problema después de construir otro proyecto con la analítica de New Relic activada. Gradle daemon luego almacenó en caché el agente New Relic y no pudo iniciar la otra aplicación.

Lo que ayudó fue

 ./gradlew --stop 

Sucede para mí solo si la ejecución instantánea está habilitada.

¿Está seguro de que es la primera excepción que está recibiendo después de ejecutar su aplicación? Puede haber algunas excepciones no captadas anteriormente.

  • QMOBILE, TECNO, ALPES java.lang.NoClassDefFoundError: android.support.v7.internal.view.menu.MenuBuilder
  • Eclipse: java.lang.NoClassDefFoundError para clases JDK en un proyecto de Android
  • Java.lang.NoClassDefFoundError: com.google.android.gms.common.AccountPicker
  • Error de Eclipse: NoClassDefFoundError: java / lang / ref / FinalReference
  • Java.lang.NoClassDefFoundError con todos los R classess cuando se utiliza la biblioteca de Android
  • Twitter Fabric + MultiDex causa NoClassDefFoundError
  • Desplazamiento Actualizar diseño en Android Fragment
  • Mejor registrador de Android para iniciar sesión en el archivo
  • NoClassDefFoundError al usar greenDao
  • La aplicación se bloquea al hacer una nueva intención. No Error Clase Def Encontrado
  • Jitsi-android no puede compilar y construir
  • FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.