我的项目中的类的java.lang.NoClassDefFoundError

时间:2016-05-18 06:40:06

标签: java android android-studio-2.0

我在初始化NavigationDrawerRecyclerViewAdapter时遇到错误。

现在类com.mypackage.app.NavigationDrawerRecyclerViewAdapter存在且它是公共的,它的构造函数也是公共的。

1: thread exiting with uncaught exception (group=0x416fed58)
05-18 10:46:20.573 3669-3669/com.mypackage.app E/AndroidRuntime: FATAL EXCEPTION: main Process: com.mypackage.app, PID: 3669
java.lang.NoClassDefFoundError: com.mypackage.app.NavigationDrawerRecyclerViewAdapter                                                                       at com.mypackage.app.FragmentDrawer.onCreateView(FragmentDrawer.java:68)

清理和重建项目不起作用。有关这可能是什么问题的任何建议吗?

3 个答案:

答案 0 :(得分:0)

点击您的项目 - >属性 - >构建路径 - >订单和导出选项卡。 确保选中“Android私有库”以进行导出。 如果库已经从libs /文件夹添加,请删除它们,因为它们会自动添加到“Android私有库”部分。

答案 1 :(得分:0)

NoClassDefFoundError指示在编译期间该类存在但在运行应用程序时不可用,有时静态初始化程序块上的错误也会导致NoClassDefFoundError或此类的上下文无法访问。 因此,请确保此类引用相同的类内存。

答案 2 :(得分:0)

我找到了答案。

我启用了multidex,这导致了问题。 我使用的是编译com.google.android.gms:play-services:8.4.0'在我的build.gradle中,而我只需要com.google.android.gms:play-services-auth:8.4.0。

更改上述内容,我能够运行我的应用程序而不启用导致找不到类错误的multidex。

这有助于:App not launching with multidexEnabled true in android studio - Famous 65k reference method