關於java.lang.NoClassDefFoundError的解決方法
阿新 • • 發佈:2019-01-25
1.NoClassDefFoundError之場景還原
專案在後期收尾的時候,一直伴隨著一個揮之不去的bug--java.lang.NoClassDefFoundError,這樣導致了專案在app在Android版本5.0以下都不能執行,一登入就崩了,捉急!今天就這個錯誤,我決心耗費半天功夫,終於給破了,可喜可賀!接下來就該問題詳細分解一下,希望能幫助大夥解決難關。
2.java.lang.NoClassDefFoundError的解決辦法
隨著專案的發展,app的容量會越愛越大,可能會報出詭異的錯誤,比如java.lang.NoClassDefFoundErro,這個錯誤是編譯時正常,執行時找不到對應的類。解決的辦法如下:
1.在module的build.gradle進行相應的配置
defaultConfig { applicationId "com.weiaibenpao.demo.chislim" minSdkVersion 17 targetSdkVersion 23 versionCode 1 versionName "2.0.204" testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner" multiDexEnabled true }
保證multiDexEnabled true;
2.新增jar遠端依賴
compile 'com.android.support:multidex:1.0.0'3.自定義application,使其過載attachBaseContext()方法
@Override protected void attachBaseContext(Context base) { super.attachBaseContext(base); MultiDex.install(base); }4.在manifest下配置application
<application android:name=".sportoutdoor.presentation.module.PedometerApplication"最後clean工程一把,再執行,祝你好運!android:allowBackup="true" android:icon="@mipmap/ic_launcher" android:label="@string/app_name" android:supportsRtl="true" android:theme="@style/AppTheme">
好了,今天就講到這裡了,希望對您有所幫助,我是張星,歡迎關注,後期章節更精彩!