如何修复ClassNotFoundException?

这是奇怪的…我已经将sdk版本升级到25,然后尝试午餐应用程序..并得到了这样的错误

FATAL EXCEPTION: main Process: com.fittingroom.newtimezone, PID: 2465 java.lang.RuntimeException: Unable to instantiate activity ComponentInfo{com.fittingroom.newtimezone/com.fittingroom.newtimezone.view.ActivitySplash}: java.lang.ClassNotFoundException: Didn't find class "com.fittingroom.newtimezone.view.ActivitySplash" on path: DexPathList[[zip file "/data/app/com.fittingroom.newtimezone-2/base.apk"],nativeLibraryDirectories=[/data/app/com.fittingroom.newtimezone-2/lib/arm, /vendor/lib, /system/lib]] at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:3093) at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:3349) at android.app.ActivityThread.access$1100(ActivityThread.java:221) at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1794) at android.os.Handler.dispatchMessage(Handler.java:102) at android.os.Looper.loop(Looper.java:158) at android.app.ActivityThread.main(ActivityThread.java:7224) at java.lang.reflect.Method.invoke(Native Method) at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1230) at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1120) Caused by: java.lang.ClassNotFoundException: Didn't find class "com.fittingroom.newtimezone.view.ActivitySplash" on path: DexPathList[[zip file "/data/app/com.fittingroom.newtimezone-2/base.apk"],nativeLibraryDirectories=[/data/app/com.fittingroom.newtimezone-2/lib/arm, /vendor/lib, /system/lib]] at dalvik.system.BaseDexClassLoader.findClass(BaseDexClassLoader.java:56) at java.lang.ClassLoader.loadClass(ClassLoader.java:511) at java.lang.ClassLoader.loadClass(ClassLoader.java:469) at android.app.Instrumentation.newActivity(Instrumentation.java:1095) at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:3083) at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:3349) at android.app.ActivityThread.access$1100(ActivityThread.java:221) at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1794) at android.os.Handler.dispatchMessage(Handler.java:102) at android.os.Looper.loop(Looper.java:158) at android.app.ActivityThread.main(ActivityThread.java:7224) at java.lang.reflect.Method.invoke(Native Method) at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1230) at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1120) Suppressed: java.lang.ClassNotFoundException: com.fittingroom.newtimezone.view.ActivitySplash 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) ... 12 more Caused by: java.lang.NoClassDefFoundError: Class not found using the boot class loader; no stack trace available 

我已经将所有依赖项更新为25但是无论如何我得到了这个错误。

错误说我没有这样的课,但我有

在此处输入图像描述

我究竟做错了什么? 如何解决这个问题?

谢谢

好吧,我面对的只是我刚用过的:

文件 – >使高速缓存/重新启动无效

它对我有用。

我之前遇到过这样的错误:首先尝试清理并重建项目。

然后打开File – > Invalidate Caches / Restart,单击蓝色按钮Invalidate Caches / Restart。

如果这不起作用,请尝试此解决方案:

1-添加到build.gradle(Module.app)

  defaultConfig { multiDexEnabled true 

2-在依赖项中添加它:

 dependencies { compile 'com.android.support:multidex:1.0.1' } 

2-在清单文件中添加此项

  

它正确地与我合作。

我认为问题是你在Gradle中使用了很多库,你可能已经超过了64K参考限制。

我们能以不同的方式解决这个问题,

1.如果你使用即时运行,请取消选中它的选项

2.将multiDexEnabled true添加到gradle或在项目应用程序类中添加multidex

我有同样的错误并修复它。 因为我创建时更改了默认的MainActivity名称,但我没有在清单默认文件夹中更改。