每当我运行应用程序时都会遇到此问题:java.lang.NoClassDefFoundError:使用启动类加载器找不到类;没有可用的堆栈

时间:2019-04-16 18:26:41

标签: java android

我每次尝试运行该应用程序时都会遇到此错误,试图解决它几天却没有结果,复查了大多数与我有同样问题但仍然没有结果的问题

Suppressed: java.lang.ClassNotFoundException: com.facebook.appevents.InternalAppEventsLogger
                at java.lang.Class.classForName(Native Method)
                at java.lang.BootClassLoader.findClass(ClassLoader.java:781)
                at java.lang.BootClassLoader.loadClass(ClassLoader.java:841)
                at java.lang.ClassLoader.loadClass(ClassLoader.java:504)
                        ... 18 more
             Caused by: java.lang.NoClassDefFoundError: Class not found using the boot class loader; no stack available

这是我已经做过的解决方案的列表:

  • 已删除的.gradle文件夹
  • 重建项目>清洁项目
  • 为我的整个项目提供了一条还原之路
  • 禁用即时运行

这是我的.build gradle

buildscript {

repositories {
    google()
    jcenter()
    mavenCentral()
}
dependencies {

    classpath 'com.android.tools.build:gradle:3.2.1'
    classpath 'com.google.gms:google-services:3.2.0'



      // NOTE: Do not place your application dependencies here; they belong
        // in the individual module build.gradle files
    }
}

allprojects {
    repositories {
        google()
        jcenter()
        maven {
            url "https://maven.google.com" // Google's Maven repository
        }
    }
}

task clean(type: Delete) {
    delete rootProject.buildDir
}

当我导航到错误时,classloader.java也显示错误。

希望为我的问题找到解决方案

1 个答案:

答案 0 :(得分:0)

尝试使缓存无效并在Android Studio中重新启动。

单击文件->使高速缓存无效,然后选择无效并重新启动。

还要检查您的应用是否具有Internet权限。

如果上述方法不起作用,请尝试将4.39.0作为FB SDK版本

如果使用proguard,则将其添加到proguard规则

-keep class com.facebook.** {*;}
-dontwarn com.facebook.**

更新: 尝试将4.39.0作为FB SDK版本。它应该可以解决问题。