Почему Android не может найти com.google.gson.Gson

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

Solutions Collecting From Web of "Почему Android не может найти com.google.gson.Gson"

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

Это добавляет атрибут exported = true в элемент classpath

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

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

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

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

  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; 

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

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

Решение состоит в том, что вы просто помещаете чистые файлы jar в папку «libs» (без подпапок). Вам также не нужно объявлять их, android wil найдет их сами. Возможно, вам понадобится Project> Clean

Я уверен, что вы скопировали банку в «libs», а также добавили свойство> Java Build Path> (tab) Libraries, не так ли?

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

  1. Android xx
  2. Android Dependencies (особенно этот, я пропустил это, eclipse покажет мне ошибку «не удалось найти класс com.google.gson.xx»)

Просто сделайте копию проекта, решите эту проблему …

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

У меня была схожая проблема, но я предполагаю, что мое требование было более сложным, так как libarary GSON использовался проектом Android Library, от которого зависел мой основной проект Android. Я пробовал оба подхода выше, но никто из них не работал для меня. Если я добавлю файл java GSON непосредственно в основной проект Android, он будет работать, но это не то, что я хотел.

С небольшим расследованием я понял, что банкомат GSON не использует никаких зависимостей (сторонних библиотек). Поэтому я решил скопировать исходный файл проекта GSON в src-файл проекта моего Android-библиотеки, и он работал как шарм. Поэтому вы можете использовать исходный код, а не двоичный код. Исходный код является частью загрузки в файле jar, просто разархивируйте его.

Я столкнулся с одним и тем же. Но решение было довольно простым, просто нажмите правой кнопкой мыши на свой проект -> «Правильности» -> «Библиотеки» -> Добавить внешние банки -> ОК, и это он. Он решил мою проблему. Надеюсь, он также решит вашу проблему

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

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

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

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

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