OKHttp 运行错误: Caused by: java.lang.NoClassDefFoundError: Class not found

12-17 10:55:53.207 10209-10233/com.zengjx.okhttpdemo E/AndroidRuntime: FATAL EXCEPTION: Thread-1210
                                                                       Process: com.zengjx.okhttpdemo, PID: 10209
                                                                       java.lang.NoClassDefFoundError: Failed resolution of: Lkotlin/text/Charsets;
                                                                           at okio.Buffer.<clinit>(Buffer.kt:2212)
                                                                           at okhttp3.ResponseBody.create(ResponseBody.java:210)
                                                                           at okhttp3.internal.Util.<clinit>(Util.java:62)
                                                                           at okhttp3.internal.Util.immutableList(Util.java:236)
                                                                           at okhttp3.OkHttpClient.<clinit>(OkHttpClient.java:127)
                                                                           at com.zengjx.okhttpdemo.MainActivity$1.run(MainActivity.java:84)
                                                                           at java.lang.Thread.run(Thread.java:818)
                                                                        Caused by: java.lang.ClassNotFoundException: Didn't find class "kotlin.text.Charsets" on path: DexPathList[[zip file "/data/app/com.zengjx.okhttpdemo-2/base.apk"],nativeLibraryDirectories=[/vendor/lib, /system/lib, /lib, /usr/lib, /home/EPT_Middleware/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 okio.Buffer.<clinit>(Buffer.kt:2212) 
                                                                           at okhttp3.ResponseBody.create(ResponseBody.java:210) 
                                                                           at okhttp3.internal.Util.<clinit>(Util.java:62) 
                                                                           at okhttp3.internal.Util.immutableList(Util.java:236) 
                                                                           at okhttp3.OkHttpClient.<clinit>(OkHttpClient.java:127) 
                                                                           at com.zengjx.okhttpdemo.MainActivity$1.run(MainActivity.java:84) 
                                                                           at java.lang.Thread.run(Thread.java:818) 
                                                                           Suppressed: java.lang.ClassNotFoundException: kotlin.text.Charsets
                                                                           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)
                                                                                   ... 8 more
                                                                        Caused by: java.lang.NoClassDefFoundError: Class not found using the boot class loader; no stack available
12-17 10:55:53.273 10209-10233/? I/Process: Sending signal. PID: 10209 SIG: 9
 

解决方法:
1: 在Module中的bulid.gradle中添加:** multiDexEnabled true**
android { defaultConfig { minSdkVersion 17 targetSdkVersion 25 versionCode 1 versionName "1.0.0.0" testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner" multiDexEnabled true }
2:在Module中的bulid.gradle中添加:compile 'com.android.support:multidex:1.0.1'
dependencies { /**第三方依赖库**/ compile 'com.android.support:multidex:1.0.1' }
3:在的的Application中,onCreate方法里, super.onCreate()方法之前调用:** MultiDex.install(this);**
public class MyApplication extends Application { @Override public void onCreate() { MultiDex.install(this); super.onCreate(); } }



作者:牟仯
链接:https://www.jianshu.com/p/c00a5b195319
來源:简书
简书著作权归作者所有,任何形式的转载都请联系作者获得授权并注明出处。

猜你喜欢

转载自blog.csdn.net/oDianZi1234567/article/details/85046202