Почему Android не может найти com.google.gson.Gson - PullRequest
26 голосов
/ 17 апреля 2011

Я пытаюсь использовать GSON в своем проекте, но мое приложение падает, и logcat сообщает, что com.google.gson.Gson не может быть найден.Я добавил import com.google.gson.Gson в мои файлы классов, у меня есть gson в проводнике пакетов, и я добавил его правой кнопкой мыши -> путь сборки -> добавить библиотеки.Это также отображается в Project-> properties-> путь сборки Java-> вкладка библиотеки-> gson.Что я сделал не так?

Ответы [ 12 ]

40 голосов
/ 24 апреля 2012

Что сработало для меня: Установите флажок рядом с lib (gson-2.0.jar) в: «Свойства проекта» -> «Путь сборки Java» -> вкладка «Порядок и экспорт».Затем выполните команду clean / build.

Это добавит атрибут exported = true к записи classpath

<classpathentry exported="true" kind="lib" path="libs/gson-2.0.jar"/>
14 голосов
/ 31 мая 2011

Вы положили файл jar в папку libs проекта? Если нет, попробуйте переместить его туда, создав папку при необходимости. Должен быть на том же уровне, что и папка src.

У меня была похожая проблема при попытке создать приложение, и это решило ее.

7 голосов
/ 09 июня 2013

Я использую IntelliJ, не затмение, но вот как я это сделал:

  1. Загрузите исходные файлы с https://google -gson.googlecode.com / files / google-gson-2.2.4-release.zip

  2. Распакуйте их

  3. Скопируйте их в папку "libs" вашего проекта. Я сделал это вручную с помощью терминала, но вы можете сделать это, перейдя в папку вашего проекта, расположенную на вашем компьютере. Ваше Project_Name> приложение> Libs [вставьте их сюда]

  4. Перейдите в редактор (в моем случае IntelliJ). Вы должны увидеть следующие 3 файла в папке libs структуры проекта:

    • gson-2.2.4.jar
    • gson-2.2.4-javadoc.jar
    • gson-2.2.4-sources.jar

  5. Откройте файл build.gradle и вставьте следующую строку в раздел зависимостей:
    compile files('libs/gson-2.2.4.jar', 'libs/gson-2.2.4-javadoc.jar', 'libs/gson-2.2.4-javadoc.jar')

  6. Щелкните правой кнопкой мыши по каждому из исходных файлов и выберите «Добавить как библиотеку ...»

  7. Используйте следующие опции:

    • Name: name of the jar file
    • Level: Project Library
    • Add to Module: select project your adding to

  8. Перестроить проект Build > Rebuild project

  9. Импортируйте и используйте!

    import com.google.gson.Gson;
    
2 голосов
/ 06 апреля 2012

Я столкнулся с той же проблемой (при установке SDK 17) ...

Решение состоит в том, что вы просто помещаете чистые файлы jar в папку "libs" (без подпапок). Вам также не нужно объявлять их, Android найдет их сам. Вам может потребоваться сделать Проект> Очистить

2 голосов
/ 18 сентября 2011

Сегодня я заметил, что вам не нравится, когда вы добавляете свою библиотеку. Решение, которое работало для меня, состояло в том, чтобы добавить его только в качестве внешней банки. Я наблюдал за этим, выполняя шаги, описанные автором этой записи , т. Е. Свойства -> Путь сборки Java -> Библиотеки -> Добавить внешние JAR и указать на загруженную библиотеку gson.

1 голос
/ 14 мая 2012

Не редактируйте файл .classpath напрямую и даже не помещайте файлы в папки lib из Eclipse.Вместо этого используйте Java Build Path-> Order and Export вкладку, чтобы выбрать библиотеки для экспорта в конечном модуле развертывания (например, war / apk). Чтобы быть на более безопасной стороне, выполните Project-> Clean после изменения пути сборки.

1 голос
/ 01 мая 2012

Я уверен, что вы скопировали jar в "libs", а также добавили свойство> Путь сборки Java> (вкладка) Библиотеки, верно?

моя проблема была глупой ... пожалуйста, отметьте, кромеGson jar, если у вас есть две вещи по крайней мере на вкладке выше:

  1. android xx
  2. Зависимости Android (особенно эта, я пропустил это, затмение покажет мне ошибку "можетnot find class com.google.gson.xx ")

, просто сделайте копию проекта, чтобы решить эту проблему ...

0 голосов
/ 20 марта 2015

Я использую Android Studio У меня была та же проблема, что я решил выберите проект нажмите f4 из всплывающего окна нажмите приложение и в зависимостях выберите зависимость от файла и выберите три папки, которые я вставил в каталог lib

0 голосов
/ 03 марта 2014

Я пытался сделать то же самое, прочитал так много ответов и перепробовал много вещей, но не для пробирки, но я решил эту проблему, выполнив всего один щелчок, и это просто.

1) Добавьте файл .jar в папку libs и убедитесь, что его библиотеки не lib 2) Очистите и соберите свой проект, вы увидите этот файл в папке libs 3) щелкните файл правой кнопкой мыши и перейдите к пути сборки и выберите «Добавить к пути сборки»

Запустите ваш проект, он будет работать нормально. Надеюсь, это поможет

0 голосов
/ 30 сентября 2013

Если Projct Properties -> Java build path -> Add external jar не работает, и ваш проект является веб-проектом, попробуйте добавить gson jar непосредственно в папку lib на сервере.Пример: для Apache Tomcat использовать apache-tomcat / lib.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...