NoClassDefFoundError和ClassNotFoundException

时间:2015-04-08 17:20:35

标签: java android

我收到这些错误:

java.lang.NoClassDefFoundError: Failed resolution of: Lcom/google/gson/stream/JsonReader;

Caused by: java.lang.ClassNotFoundException: Didn't find class "com.google.gson.stream.JsonReader" on path: DexPathList[[zip file "/data/app/project.1stApp.youtubeplayer-1/base.apk"],nativeLibraryDirectories=[/vendor/lib, /system/lib]]

Caused by: java.lang.NoClassDefFoundError: Class not found using the boot class loader; no stack available

当我尝试运行我的应用程序时,这个'com.google.gson'库是我添加到项目中的jar文件,当我遇到这些问题时无法理解..

没有添加任何代码,因为我发现它与错误无关......

3 个答案:

答案 0 :(得分:5)

将jar复制到libs文件夹中,并将其添加到build.gradle依赖项

compile fileTree(dir: 'libs', include: ['*.jar'])
compile 'com.google.code.gson:gson:2.3.1'

(适用于您的json版本的Exchange 2.3.1,或使用2.3。*)

别忘了同步

答案 1 :(得分:1)

我使用AS.I在生成签名apk时遇到了同样的问题,我确实将gson.jar添加为库。然后我清理项目问题就消失了;

答案 2 :(得分:0)

您必须确保jar位于libs文件夹中,然后右键单击并点击Add as Library。您还必须在gradle构建文件中有compile files('jarname.jar')。之后,运行gradle clean并再次尝试构建。