No se pudo cargar el adaptador de módulo para la clase. Asegúrese de que la generación de código se haya ejecutado para este módulo

Estoy recibiendo este error cuando intento ejecutar mi aplicación:

E/AndroidRuntime(2314): java.lang.RuntimeException: Unable to create application in.mubble.billbytwo.GlobalApp: java.lang.IllegalStateException: Module adapter for class in.mubble.billbytwo.RootModule could not be loaded. Please ensure that code generation was run for this module. 

Creo que estoy usando Ant sistema de construcción basado no estoy seguro, sin embargo, este es mi primer proyecto dagger y estoy en Eclipse IDE.

PS: Ya he intentado agregar java-writer y dagger-compilador a las rutas de fábrica como algunos otros mensajes sugieren pero no hay suerte.

Aquí hay un rastro de pila completa:

 FATAL EXCEPTION: main Process: in.mubble.billbytwo, PID: 2314 java.lang.RuntimeException: Unable to create application in.mubble.billbytwo.GlobalApp: java.lang.IllegalStateException: Module adapter for class in.mubble.billbytwo.RootModule could not be loaded. Please ensure that code generation was run for this module. at android.app.ActivityThread.handleBindApplication(ActivityThread.java:4347) at android.app.ActivityThread.access$1500(ActivityThread.java:135) at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1256) at android.os.Handler.dispatchMessage(Handler.java:102) at android.os.Looper.loop(Looper.java:136) at android.app.ActivityThread.main(ActivityThread.java:5017) at java.lang.reflect.Method.invokeNative(Native Method) at java.lang.reflect.Method.invoke(Method.java:515) at com.android.internal.os.ZygoteInit$MethodAndArgsCaller .run(ZygoteInit.java:779) at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:595) at dalvik.system.NativeStart.main(Native Method) Caused by: java.lang.IllegalStateException: Module adapter for class in.mubble.billbytwo.RootModule could not be loaded. Please ensure that code generation was run for this module. at dagger.internal.FailoverLoader$1.create(FailoverLoader.java:45) at dagger.internal.FailoverLoader$1.create(FailoverLoader.java:40) at dagger.internal.Memoizer.get(Memoizer.java:56) at dagger.internal.FailoverLoader.getModuleAdapter(FailoverLoader.java:57) at dagger.internal.Modules.loadModules(Modules.java:43) at dagger.ObjectGraph$DaggerObjectGraph.makeGraph(ObjectGraph.java:174) at dagger.ObjectGraph$DaggerObjectGraph.access$000(ObjectGraph.java:138) at dagger.ObjectGraph.create(ObjectGraph.java:129) at in.mubble.billbytwo.Injector.init(Injector.java:13) at in.mubble.billbytwo.Injector.init(Injector.java:24) at in.mubble.billbytwo.GlobalApp.onCreate(GlobalApp.java:67) at android.app.Instrumentation .callApplicationOnCreate(Instrumentation.java:1007) at android.app.ActivityThread.handleBindApplication(ActivityThread.java:4344) 

Por favor, ayuda cómo resolver esto.

Es importante estar seguro de que la generación de código está sucediendo. Compruebe los directorios de compilación para asegurarse de que se está generando realmente esta clase. No he usado Ant con Dagger, pero seguro que necesitas asegurar que dagger-compilador – $ {version} .jar esté disponible para javac, así que comprueba en tus carpetas de clases y ver si el código se está generando en absoluto. Si no, es un problema de configuración de compilación.

Si es así, entonces usted necesita para comprobar su configuración proguard y asegurarse de que está manteniendo todo lo que hereda de ModuleAdapter y Binding. Esto es crucial porque Dagger 1.x carga dinámicamente adaptadores y, por lo tanto, no hay ninguna dependencia estática en el código que pueda informar a Proguard para dejarlo solo. Por lo tanto, es posible que Proguard simplemente haya eliminado el código del adaptador, por lo que Dagger no puede cargarlo.

(Nota, este problema será eliminado en Dagger 2)

El mismo mensaje de error aparece cuando inicializa el gráfico de objetos de Dagger en la clase de aplicación pero luego se olvida de registrar esta clase de aplicación en AndroidManifest.xml .

 <?xml version="1.0" encoding="utf-8"?> <manifest xmlns:android="http://schemas.android.com/apk/res/android" package="com.example.andro"> <application android:name=".MyDaggerApplication" android:icon="@drawable/ic_launcher" android:label="@string/app_name" android:theme="@style/AppTheme"> </application> </manifest> 

Bueno, para alguien viene a este hilo más tarde, creo que este problema podría ser causado por el "error tipográfico" de Injector.init (Object).

 Injector.init(this); 

Debiera ser

 Injector.inject(this); 

O simplemente que te olvidaste de comprobar la siguiente opción en Eclipse:

Compilador de Java> Procesamiento de anotaciones> Habilitar configuraciones específicas del proyecto

De Square Dagger IllegalStateException: No se pudo cargar el adaptador de módulo para la clase MyApplicationModule

  • Configuración de C ++ 11 (std :: thread) para NDK con ADT / Eclipse
  • Java.lang.ExceptionInInitializerError en Android
  • Conecte Eclipse al emulador de Android en una máquina diferente
  • No se puede crear Android Project en Eclipse
  • Magic detrás del archivo R.java
  • Android Emulator "no responde ¿Desea cerrarlo?
  • Problema con aapt.exe
  • Cómo obtener GNU C en las preferencias
  • Cómo mostrar el carácter de espacio en blanco en android studio como herramienta de Eclipse
  • ¿Por qué estoy recibiendo una descripción de proyecto no válida al importar el proyecto?
  • La importación butterknife.InjectView no se puede resolver
  • FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.