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