过去几个月我一直在和一些同事一起做一个项目,当我们完成最终的 android 构建时,我们中的一些人开始获得 noclassdeffrounderror
。在我们的 LogCat
当我们在我们的设备上运行应用程序时。代码没有改变,它引用调用的类与找不到的类在同一级别,在同一包中。该项目在其他计算机上运行,看起来有点随机。我已经尝试了一切来解决这个问题,但没有一个奏效。如果我在另一台可以的计算机上编译代码,并制作一个 apk,它运行良好。但如果从有错误的计算机上编译,它总是会崩溃。帮助!
04-17 20:05:55.929: E/AndroidRuntime(12615): FATAL EXCEPTION: main
04-17 20:05:55.929: E/AndroidRuntime(12615): java.lang.NoClassDefFoundError: com.team.catswithhats.AndroidGPS
04-17 20:05:55.929: E/AndroidRuntime(12615): at com.team.catswithhats.MainActivity.onCreate(MainActivity.java:14)
04-17 20:05:55.929: E/AndroidRuntime(12615): at android.app.Activity.performCreate(Activity.java:5104)
04-17 20:05:55.929: E/AndroidRuntime(12615): at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1080)
04-17 20:05:55.929: E/AndroidRuntime(12615): at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2144)
04-17 20:05:55.929: E/AndroidRuntime(12615): at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2230)
04-17 20:05:55.929: E/AndroidRuntime(12615): at android.app.ActivityThread.access$600(ActivityThread.java:141)
04-17 20:05:55.929: E/AndroidRuntime(12615): at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1234)
04-17 20:05:55.929: E/AndroidRuntime(12615): at android.os.Handler.dispatchMessage(Handler.java:99)
04-17 20:05:55.929: E/AndroidRuntime(12615): at android.os.Looper.loop(Looper.java:137)
04-17 20:05:55.929: E/AndroidRuntime(12615): at android.app.ActivityThread.main(ActivityThread.java:5041)
04-17 20:05:55.929: E/AndroidRuntime(12615): at java.lang.reflect.Method.invokeNative(Native Method)
04-17 20:05:55.929: E/AndroidRuntime(12615): at java.lang.reflect.Method.invoke(Method.java:511)
04-17 20:05:55.929: E/AndroidRuntime(12615): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:793)
04-17 20:05:55.929: E/AndroidRuntime(12615): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:560)
04-17 20:05:55.929: E/AndroidRuntime(12615): at dalvik.system.NativeStart.main(Native Method)
最佳答案
当在 eclipse 中找到一个类从而正确构建时,会发生这种情况,但不是在运行时。
右键单击您的 Android 项目 -> 属性 -> Java 构建路径 -> 顺序并导出并检查核心项目和所有jar。
关于java - Android 项目中的 NoClassDefFoundError,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16072442/