#greendao#NoClassDefFoundError:

今天在調試項目的時候,項目編譯都正常如初,但是運行的時候直接崩掉了,異常如下:

java.lang.NoClassDefFoundError: org.greenrobot.greendao.query.WhereCollector
 at org.greenrobot.greendao.query.QueryBuilder.<init>(QueryBuilder.java:85) 
at org.greenrobot.greendao.query.QueryBuilder.internalCreate(QueryBuilder.java:73) 
at org.greenrobot.greendao.AbstractDao.queryBuilder(AbstractDao.java:793) 
at com.luckytry.luckylibrary.MyAplication.APPAplication.initData(APPAplication.java:132) 
at com.luckytry.luckylibrary.MyAplication.APPAplication.initDB(APPAplication.java:117) 
at com.luckytry.luckylibrary.MyAplication.APPAplication.onCreate(APPAplication.java:39) 
at android.app.Instrumentation.callApplicationOnCreate(Instrumentation.java:1009) 
at android.app.ActivityThread.handleBindApplication(ActivityThread.java:4655) 
at android.app.ActivityThread.access$1800(ActivityThread.java:143) at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1322) 
at android.os.Handler.dispatchMessage(Handler.java:102) at android.os.Looper.loop(Looper.java:136) 
at android.app.ActivityThread.main(ActivityThread.java:5356) at java.lang.reflect.Method.invokeNative(Native Method) 
at java.lang.reflect.Method.invoke(Method.java:515) 
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:864) 
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:680) at dalvik.system.NativeStart.main(Native Method)

然後我花了一個下午時間,通過百度、QQ羣、CSDN,github、stackoverflow等等,終於解決了步驟如下:

  1. 添加依賴
compile 'com.android.support:multidex:1.0.1'
  1. 修改build.gradle文件
android {
    ...
    defaultConfig {
        ...
        multiDexEnabled true
       ...
    }
...
    }
  1. 修改Application
<application
        android:name="MultiDexApplication"
        android:allowBackup="true"
        android:icon="@mipmap/ic_launcher"
        android:label="@string/app_name"
        android:supportsRtl="true"
        android:theme="@style/AppTheme"
        android:windowSoftInputMode="adjustPan">
     //如果有自定義的Application,就修改繼承關係
     public class APPAplication extends MultiDexApplication {}

然後再次運行就解決這個異常了!
感謝老外的“堆棧溢出”——stackoverflow

發佈了61 篇原創文章 · 獲贊 28 · 訪問量 10萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章