为什么android无法找到com.google.gson.Gson

时间:2011-04-17 14:38:08

标签: android eclipse gson

我正在尝试在我的项目中使用GSON,但我的应用程序崩溃了,logcat说无法找到com.google.gson.Gson。我已将com.google.gson.Gson导入到我的类文件中,我在我的包资源管理器中有gson,并通过右键单击添加它 - >构建路径 - >添加库。它还显示在Project-> properties-> java build path-> libraries选项卡 - > gson中。我做错了什么?

12 个答案:

答案 0 :(得分:40)

对我有用:检查lib(gson-2.0.jar)旁边的复选框:'Project Properties' - > 'Java构建路径' - > '订单和导出'选项卡。然后做一个干净/构建。

这会将exported = true属性添加到类路径条目

<classpathentry exported="true" kind="lib" path="libs/gson-2.0.jar"/>

答案 1 :(得分:14)

您是否已将jar文件放在项目的libs文件夹中?如果没有,请尝试将其移动到那里,如果需要,创建文件夹。应该与src文件夹处于同一级别。

我有一个类似的问题,试图建立一个应用程序并解决它。

答案 2 :(得分:7)

我正在使用IntelliJ,而不是日食,但我就是这样做的:

  1. https://google-gson.googlecode.com/files/google-gson-2.2.4-release.zip

  2. 下载源文件
  3. 打开包装

  4. 将它们复制到项目的“libs”文件夹中。我是通过使用终端手动完成的,但您可以通过进入计算机中的项目文件夹来完成此操作。您的Project_Name&gt; app&gt; Libs [将它们粘贴到此处]

  5. 转到您的编辑器(在我的情况下为IntelliJ)您应该在项目结构的libs文件夹中看到以下3个文件:

          
    • gson-2.2.4.jar

    •     
    • gson-2.2.4-javadoc.jar

    •     
    • gson-2.2.4-sources.jar

  6. 打开build.gradle文件,并在依赖项部分中插入以下行:
    compile files('libs/gson-2.2.4.jar', 'libs/gson-2.2.4-javadoc.jar', 'libs/gson-2.2.4-javadoc.jar')

  7. 右键单击每个源文件,然后选择“添加为库...”

  8. 使用以下选项:

          
    • Name: name of the jar file

    •     
    • Level: Project Library

    •     
    • Add to Module: select project your adding to

  9. 重建项目   Build > Rebuild project

  10. 导入并使用它!

    import com.google.gson.Gson;
    

答案 3 :(得分:2)

我今天观察到,当您添加图书馆时,它不喜欢。 对我有用的解决方案是仅将其添加为外部罐。我通过执行此post的作者所描述的步骤来观察它,即属性 - &gt; Java构建路径 - &gt;图书馆 - &gt;添加外部JAR并指向下载的gson库。

答案 4 :(得分:2)

我遇到了同样的问题(安装SDK 17时)......

解决方法是,您只需将纯jar文件放入“libs”文件夹(不带子文件夹)。 你也不需要声明它们,android会自己找到它们。您可能需要执行项目&gt;清洁

答案 5 :(得分:1)

我确定你已经将jar复制到了“libs”中, 并且还添加了属性&gt; Java Build Path&gt;(tab)Libraries,对吧?

我的问题很愚蠢...... 请检查Gson jar以外的其他内容,如果您至少在上面的标签中有两个东西:

  1. android x.x
  2. Android依赖关系(特别是这一次,我错过了这个,eclipse显示错误“无法找到com.google.gson.xx类”)
  3. 只需做一个项目副本就可以解决这个问题...

答案 6 :(得分:1)

不要直接编辑.classpath文件,甚至不要将文件放入Eclipse的lib文件夹中。 而是使用Java Build Path-&gt; Order and Export选项卡选择要在最终部署单元中导出的库(例如war / apk) 为了更安全,请在更改构建路径后执行项目 - >清理。

答案 7 :(得分:0)

我有类似的问题,但我想我的要求更复杂,因为我的主要Android项目所依赖的Android库项目使用了GSON图书馆。我已经尝试了上述两种方法,但它们都没有为我工作。如果我将GSON jar文件直接添加到主Android项目中它可以工作,但这不是我想要的。

通过一些调查,我发现GSON jar本身并没有使用任何依赖项(第三方库)。所以我的解决方案是将GSON项目的源文件复制到我的Android Library项目的src文件夹中,它就像一个魅力。所以你可以使用源代码而不是二进制代码。源代码是jar文件中下载的一部分,只需解压缩即可。

答案 8 :(得分:0)

我面对同样的事情。但是解决方案非常简单,只需右键单击您的项目 - &gt; Properies-&gt; Libraries-&gt;添加外部jar-&gt;确定就好了。它解决了我的问题。希望它能解决你的问题

答案 9 :(得分:0)

如果Projct属性 - &gt; Java构建路径 - &gt;添加外部jar不起作用,您的项目是一个Web项目,尝试将gson jar直接添加到服务器lib文件夹。示例:对于apache Tomcat到apache-tomcat / lib。

答案 10 :(得分:0)

我一直在尝试同样的事情,阅读了很多答案并尝试了很多东西,但不是小瓶,但我只需点击一下即可解决这个问题。

1)在libs文件夹中添加.jar文件,确保其libs不是lib 2)清理并构建项目,您将在libs文件夹下看到该文件 3)右键单击该文件并转到构建路径并选择添加到构建路径

运行你的项目它会正常工作。希望这有帮助

答案 11 :(得分:0)

我正在使用Android Studio 我遇到了同样的问题 选择项目从弹出窗口按f4 单击应用程序和依赖项 选择文件依赖项并选择我在lib目录中粘贴的三个文件夹