我将片段翻译成Kotlin。
在其内部,我使用标有Otto的@Subscriebe
标签的方法来监听网络通信。
当我运行一些构建时,这个片段被创建并可见,但是当下载数据并且Otto尝试调用这个带标记的方法时,我得到了ClassNotFoundException
:
Fatal Exception: java.lang.NoClassDefFoundError: Failed resolution of: (...)/app/ui/fragments/ProfileCoverFragment$fillFromUserProfile$1;
at (...).ui.fragments.ProfileCoverFragment.fillFromUserProfile(ProfileCoverFragment.kt:136)
at java.lang.reflect.Method.invoke(Method.java)
at java.lang.reflect.Method.invoke(Method.java:372)
at com.squareup.otto.EventHandler.handleEvent(EventHandler.java:89)
at com.squareup.otto.Bus.dispatch(Bus.java:386)
at com.squareup.otto.Bus.dispatchQueuedEvents(Bus.java:369)
at com.squareup.otto.Bus.post(Bus.java:338)
at (...).communication.DefaultCallback.success(DefaultCallback.java:32)
at (...).app.communication.CommunicationManager$7.success(CommunicationManager.java:463)
at (...).app.communication.CommunicationManager$7.success(CommunicationManager.java:459)
at retrofit.CallbackRunnable$1.run(CallbackRunnable.java:45)
at android.os.Handler.handleCallback(Handler.java:739)
at android.os.Handler.dispatchMessage(Handler.java:95)
at android.os.Looper.loop(Looper.java:135)
at android.app.ActivityThread.main(ActivityThread.java:5257)
at java.lang.reflect.Method.invoke(Method.java)
at java.lang.reflect.Method.invoke(Method.java:372)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:903)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:698)
重建问题暂时解决后。但它仍然可以在某些版本中找到。 我正在寻找一种通过gradle获得稳定构建过程的方法。