java.lang.NoClassDefFoundError:com.google.gson.Gson

时间:2014-03-15 06:58:03

标签: android json gson

我是Android开发环境的新手,所以需要专家的帮助。

java.lang.NoClassDefFoundError: com.google.gson.Gson

Gson库包含在项目中,但是从项目内部的方法调用Gson时得到的错误就像是

5 个答案:

答案 0 :(得分:8)

以下是可能发生这种情况的几个原因:

a)未包含库jar文件

b)正在包含错误版本的jar文件

c)(如果你正在使用maven)另一个jar文件正在引入一个更新/不同版本的jar文件

d)您的类路径不包含jar文件。

一个很好的起点是打开库jar文件,看看你是否真的可以看到它中的类文件。 如果您正在使用maven,那么您应该查看依赖关系树以查看是否存在使用以下内容的冲突:

mvn dependency:tree -Dverbose

答案 1 :(得分:2)

  1. Down load the latest version of gason.jar
  2. 将gason罐添加到项目中[Eclipse:project proprieties => Java Build Path => Libraries => Add the External JARs]
  3. 检查订单和出口中的gason.jar

答案 2 :(得分:0)

将jar文件放在web-inf / lib中,而不是lib

答案 3 :(得分:0)

此问题的几个原因:

  1. .aar库:如果涉及Gson的代码位于作为库包含在应用程序项目中的.aar中;在这种情况下,应用程序还应该将gson添加为依赖项

原因:.aar库不会传播依赖项transitively

  1. proguard:gson要求的proguard规则错误,可以找到正确的规则here

答案 4 :(得分:0)

这对我有用

java -cp gson.jar: JavaClassFile

:之后注意gson.jar