greenDao3.0+gradle3.0.1 NoClassDefFoundError

来源:互联网 发布:德比软件员工不思进取 编辑:程序博客网 时间:2024/06/01 10:50
今天,不堪android studio升级提示的持续骚扰,终于屈服了~~ 我将com.android.tools.build:gradle升级到了3.0.1;随之而来的`distributionUrl=https://services.gradle.org/distributions/gradle-4.1-all.zip`也需要升级到4.1.本以为这样就结束了,但是....在编译运行项目代码的时候,出现了这个错误:
No pending exception expected: java.lang.NoClassDefFoundError: org.greenrobot.greendao.database.DatabaseOpenHelper$EncryptedHelper12-25 11:02:03.203 16990-16990/com.rencarehealth.mirhythm A/art: art/runtime/thread.cc:1336]   at java.lang.Class dalvik.system.DexFile.defineClassNative(java.lang.String, java.lang.ClassLoader, java.lang.Object) (DexFile.java:-2)12-25 11:02:03.203 16990-16990/com.rencarehealth.mirhythm A/art: art/runtime/thread.cc:1336]   at java.lang.Class dalvik.system.DexFile.defineClass(java.lang.String, java.lang.ClassLoader, java.lang.Object, java.util.List) (DexFile.java:226)12-25 11:02:03.203 16990-16990/com.rencarehealth.mirhythm A/art: art/runtime/thread.cc:1336]   at java.lang.Class dalvik.system.DexFile.loadClassBinaryName(java.lang.String, java.lang.ClassLoader, java.util.List) (DexFile.java:219)12-25 11:02:03.203 16990-16990/com.rencarehealth.mirhythm A/art: art/runtime/thread.cc:1336]   at java.lang.Class dalvik.system.DexPathList.findClass(java.lang.String, java.util.List) (DexPathList.java:338)12-25 11:02:03.204 16990-16990/com.rencarehealth.mirhythm A/art: art/runtime/thread.cc:1336]   at java.lang.Class dalvik.system.BaseDexClassLoader.findClass(java.lang.String) (BaseDexClassLoader.java:54)12-25 11:02:03.204 16990-16990/com.rencarehealth.mirhythm A/art: art/runtime/thread.cc:1336]   at java.lang.Class java.lang.ClassLoader.loadClass(java.lang.String, boolean) (ClassLoader.java:511)12-25 11:02:03.204 16990-16990/com.rencarehealth.mirhythm A/art: art/runtime/thread.cc:1336]   at java.lang.Class java.lang.ClassLoader.loadClass(java.lang.String) (ClassLoader.java:469)
项目也启动不了。。。把gradle恢复到之前的版本,又没有问题了...我的内心是崩溃的。如果继续用以前的版本,又会天天蹦出来升级提示(虽然这个提示可以关闭),所以还是认真想想办法,解决这个问题吧。。看问题的提示,是DexFile的问题,于是一直在这个`com.android.support:multidex:1.0.0`以及application中的Multidex中尝试解决问题,但是一直搞不定这个问题。后来再继续查找解决方法,发现这个文章文章中说明了这个问题

http://www.jincanshen.com/2016/10/29/Android-greendao3-0/

于是按照这篇文章的解决方法,在app的gradle中增加加密库的依赖:
compile 'net.zetetic:android-database-sqlcipher:3.5.2'
问题还真解决了!~~ 什么情况!文章中说明了,“greenDao3.0支持加密 在3.0.1进行了合并”,我这个greendao命名已经是3.2.0版本了,为什么还需要引入这个加密库呢。!~再继续查阅吧~到greendao的官网看看吧

这里写图片描述

从这里看到,greendao只是support了SQLClipher加密库,但并没有合并额!~ 好吧~原来问题在这里,还是老老实实的把加密库加上吧!~

阅读全文
'); })();
0 0
原创粉丝点击
热门IT博客
热门问题 老师的惩罚 人脸识别 我在镇武司摸鱼那些年 重生之率土为王 我在大康的咸鱼生活 盘龙之生命进化 天生仙种 凡人之先天五行 春回大明朝 姑娘不必设防,我是瞎子 夏至时间 关于夏至 夏至节气 夏至的诗 夏至的古诗 什么是夏至 夏至诗句 夏至吃什么 夏至冬至 听见夏至 桑旗夏至免费阅读目录 桑旗夏至大结局 夏至桑旗全文免费阅读 何聪夏至桑旗 桑旗夏至结局 夏至是什么意思 夏至是什么生肖 桑旗夏至全文免费阅读 夏至桑旗全文免费悦读 新婚有刺夏至桑旗免费阅读 夏至什么生肖 第三十八年夏至 夏至打一生肖 夏至代表哪个生肖 夏至代表什么生肖 夏至是第几个节气 夏至什么时候 夏至吃什么传统食物 夏至是几月几日 夏至是哪一天 夏至是什么节气 今年夏至是哪天 夏至什么时间 夏至是什么时候 夏至养生吃什么 关于夏至的古诗 夏至什么意思 夏航电话 夏航燕裸拖奶门 夏良 夏色祭