使用android库项目作为参考的ClassDefNotFound异常

时间:2015-05-05 06:03:40

标签: android noclassdeffounderror android-library

我有一个android库项目,我想从另一个项目中引用它。 库项目包含活动和xml布局。 我已添加其参考如下 MyProject属性 - > Java构建路径 - >像这样的项目 enter image description here

并按顺序导出其列出的

enter image description here

但是当我尝试从引用的项目调用一个活动时,我得到了异常,这里是stacktrace

05-05 15:01:20.246: E/AndroidRuntime(6669): FATAL EXCEPTION: main
05-05 15:01:20.246: E/AndroidRuntime(6669): java.lang.NoClassDefFoundError: jp.co.kom.android.ezimage.EZImageActivity
05-05 15:01:20.246: E/AndroidRuntime(6669):     at com.example.ezimgtest.MainActivity.openEZImage(MainActivity.java:56)
05-05 15:01:20.246: E/AndroidRuntime(6669):     at com.example.ezimgtest.MainActivity$1.onClick(MainActivity.java:29)
05-05 15:01:20.246: E/AndroidRuntime(6669):     at android.view.View.performClick(View.java:4234)
05-05 15:01:20.246: E/AndroidRuntime(6669):     at android.view.View$PerformClick.run(View.java:17363)
05-05 15:01:20.246: E/AndroidRuntime(6669):     at android.os.Handler.handleCallback(Handler.java:615)
05-05 15:01:20.246: E/AndroidRuntime(6669):     at android.os.Handler.dispatchMessage(Handler.java:92)
05-05 15:01:20.246: E/AndroidRuntime(6669):     at android.os.Looper.loop(Looper.java:137)
05-05 15:01:20.246: E/AndroidRuntime(6669):     at android.app.ActivityThread.main(ActivityThread.java:4970)
05-05 15:01:20.246: E/AndroidRuntime(6669):     at java.lang.reflect.Method.invokeNative(Native Method)
05-05 15:01:20.246: E/AndroidRuntime(6669):     at java.lang.reflect.Method.invoke(Method.java:511)
05-05 15:01:20.246: E/AndroidRuntime(6669):     at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1004)
05-05 15:01:20.246: E/AndroidRuntime(6669):     at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:771)
05-05 15:01:20.246: E/AndroidRuntime(6669):     at dalvik.system.NativeStart.main(Native Method)

2 个答案:

答案 0 :(得分:1)

我认为您的活动EZImageActivity是在自由清单中声明的​​。实际案例在ADT工具的第20版中支持androidManifest.xml合并。 使用manifestmerger.enabled属性启用。

more details

答案 1 :(得分:0)

检查您是否在清单中包含该类。

同时检查以下答案,

NoClassDefFoundError for code in an Java library on Android