java - 意外收到 NoClassDefFoundError

标签 java android

我知道这可能听起来很愚蠢,但我已经解决这个问题很多天了。据我观察,我不会重复任何问题。 在我的一些类中,当我尝试添加新方法或从其他类复制代码时,我收到 NoClassDefFoundError。更有趣的是,我更改了第三个或第四个 Activity 中的代码,但在 Splash Activity 上收到此错误。我不会添加任何新的库。只需简单地添加新方法或从其他类复制代码,我就会遇到此应用程序崩溃。目前,有几个类(class)正在发生这种情况。 由于我没有添加任何新库,这与我的 PC 或 Android Studio 有关吗?或者我的项目有问题? 这是我的依赖项列表:

dependencies {
compile fileTree(dir: 'libs', include: ['*.jar'])
compile 'com.android.support:appcompat-v7:22.0.0'
compile 'com.nineoldandroids:library:2.4.0'
compile 'com.squareup.picasso:picasso:2.5.0'
compile 'com.google.android.gms:play-services:7.3.0'
compile files('libs/isoparser-1.0.6.jar')
compile files('libs/aspectjrt-1.7.3.jar')
compile 'com.facebook.android:facebook-android-sdk:4.1.2'
compile 'org.twitter4j:twitter4j-core:4.0.3'
compile 'com.amazonaws:aws-android-sdk-s3:2.2.1'
compile 'com.amazonaws:aws-android-sdk-core:2.2.1'
}

Dependencies hierarchy

这是错误:

06-25 13:20:36.247  21879-21879/com.ali.myapp E/AndroidRuntime﹕ FATAL EXCEPTION: main
java.lang.NoClassDefFoundError: com.ali.myapp.SplashActivity$1$1
        at com.ali.myapp.SplashActivity$1.run(SplashActivity.java:47)
        at android.os.Handler.handleCallback(Handler.java:615)
        at android.os.Handler.dispatchMessage(Handler.java:92)
        at android.os.Looper.loop(Looper.java:137)
        at android.app.ActivityThread.main(ActivityThread.java:4745)
        at java.lang.reflect.Method.invokeNative(Native Method)
        at java.lang.reflect.Method.invoke(Method.java:511)
        at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:786)
        at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:553)
        at dalvik.system.NativeStart.main(Native Method)

最佳答案

如果按照 @CodeProcessor 的答案中提到的步骤无法解决您的问题,请检查并确认您没有复制“libs”文件夹和 gradle 文件中的任何库。

例如,如果 libs 文件夹中有一个名为“isoparser-1.0.6.jar”的 .jar 文件,并且您使用的是 compile 'isoparser-1.0.6.jar' 而不是 compile files('libs/isoparser-1.0.6.jar'),这也会导致NoClassDefFoundError

关于java - 意外收到 NoClassDefFoundError,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31044902/

相关文章:

java - 这行代码在java中是如何执行的?

Java:子类实现了接口(interface),父类却覆盖了接口(interface)的成员?

java (android) 从头开始​​创建 JSONObject

java - JNI 教程,无法加载库

java - 在 Java 中解析法国日期

Java Proxy.newProxyInstance() 抛出类型转换异常?

android - 来自 URL 的 setimageBitmap 不适合我想要的大小

java - Android ListView 使用 baseAdapter 返回 null onItemClick

android - 当样式同时具有父属性和带点的名称时,继承行为如何?

java - 如何使用 Maven Surefire 插件并行运行 Junit Suite