赞
踩
运行崩溃
Process: com.rl.jmessagedemo, PID: 7176 java.lang.NoClassDefFoundError: Failed resolution of: Landroidx/appcompat/R$drawable; at androidx.appcompat.widget.AppCompatDrawableManager$1.<init>(AppCompatDrawableManager.java:68) at androidx.appcompat.widget.AppCompatDrawableManager.preload(AppCompatDrawableManager.java:62) at androidx.appcompat.app.AppCompatDelegateImpl.<init>(AppCompatDelegateImpl.java:337) at androidx.appcompat.app.AppCompatDelegateImpl.<init>(AppCompatDelegateImpl.java:287) at androidx.appcompat.app.AppCompatDelegate.create(AppCompatDelegate.java:230) at androidx.appcompat.app.AppCompatActivity.getDelegate(AppCompatActivity.java:584) at androidx.appcompat.app.AppCompatActivity.attachBaseContext(AppCompatActivity.java:139) at android.app.Activity.attach(Activity.java:7899) at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:3401) at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:3601) at android.app.servertransaction.LaunchActivityItem.execute(LaunchActivityItem.java:85) at android.app.servertransaction.TransactionExecutor.executeCallbacks(TransactionExecutor.java:135) at android.app.servertransaction.TransactionExecutor.execute(TransactionExecutor.java:95) at android.app.ActivityThread$H.handleMessage(ActivityThread.java:2066) at android.os.Handler.dispatchMessage(Handler.java:106) at android.os.Looper.loop(Looper.java:223) at android.app.ActivityThread.main(ActivityThread.java:7656) at java.lang.reflect.Method.invoke(Native Method) at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:592) at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:947) Caused by: java.lang.ClassNotFoundException: Didn't find class "androidx.appcompat.R$drawable" on path: DexPathList[[zip file "/data/app/~~RyJA_32z-s2GVwOyfnjzFg==/com.rl.jmessagedemo-8x7-VVnMD4vZbMnp7ROP8g==/base.apk"],nativeLibraryDirectories=[/data/app/~~RyJA_32z-s2GVwOyfnjzFg==/com.rl.jmessagedemo-8x7-VVnMD4vZbMnp7ROP8g==/lib/x86, /data/app/~~RyJA_32z-s2GVwOyfnjzFg==/com.rl.jmessagedemo-8x7-VVnMD4vZbMnp7ROP8g==/base.apk!/lib/x86, /system/lib, /system_ext/lib]] at dalvik.system.BaseDexClassLoader.findClass(BaseDexClassLoader.java:207) at java.lang.ClassLoader.loadClass(ClassLoader.java:379) at java.lang.ClassLoader.loadClass(ClassLoader.java:312)
因为上面我AS的版本和Gradle的版本都很高排除其他博主所说的升级版本问题,也并不是classPath路径和Gradle的版本不兼容问题,顾都排除,,,因为项目昨天还可以运行今天就报错 我寻思也没动什么配置文件,,其他博主基本都是说关掉AS中的insert run
试了之后好像没点用还是一样崩溃,因为这个为报错信息太形象了,加上我基本就没动代码,是个很耗时的问题,后来具体原因具体分析,经过大量搜索我通过AS崩溃日志里的一小段报错原因找到了类似的文章,加上我之前开发的一些经验,想起了MultiDex的配置,当App中的方法超过65536 个会进行分包处理,那么这个时候就需要进行手动配置多个dex文件代码如下:
App目录下build.gradle配置
// 多dex配置
implementation 'com.android.support:multidex:1.0.3'
defaultConfig {
//方法数超限时分割dex
multiDexEnabled true
}
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。