Подтвердить что ты не робот

Почему 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. Что я сделал неправильно?

4b9b3361

Ответ 1

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

Это добавляет атрибут exported = true в запись пути к классу

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

Ответ 2

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

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

Ответ 3

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

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

  • Распакуйте их

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

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

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

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

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

  • Используйте следующие параметры:

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

  • Реконструкция проекта   Build > Rebuild project

  • Импортируйте и используйте его!

    import com.google.gson.Gson;
    

Ответ 4

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

Ответ 5

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

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

Ответ 6

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

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

  • android x.x
  • Зависимости Android (особенно этот, я пропустил это, eclipse покажет мне ошибку "не удалось найти класс com.google.gson.xx" )

просто копия проекта решит эту проблему...

Ответ 7

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

Ответ 8

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

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

Ответ 9

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

Ответ 10

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

Ответ 11

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

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

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

Ответ 12

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