Дополнительно
Android Studio: Добавить jar в качестве библиотеки?
Я пытаюсь использовать новую Android Studio, но не могу добиться правильной работы.
Я использую библиотеку Gson для сериализации/десериализации JSON-объектов. Но эта библиотека почему-то не включена в сборку.
Я создал новый проект с одной MainActivity. Скопировал gson-2.2.3.jar в папку /libs и добавил его как библиотечную зависимость (правый клик>->Add as library). Это включает jar в android studio, чтобы на него можно было ссылаться из исходных файлов.
Когда я пытаюсь запустить проект, он не компилируется, поэтому я добавил:
compile files('libs/gson-2.2.3.jar')
к зависимостям в файле de .gradle. После этого он компилируется правильно, но при запуске приложения я получаю ClassDefNotFoundException
.
Кто-нибудь знает, что я делаю не так?
1005
20
Я боролся с тем же самым в течение многих часов, пытаясь заставить Gson jar работать не меньше. Наконец-то я его разгадал - вот шаги, которые я предпринял:
Поместите Gson jar (в моем случае
gson-2.2.4.jar
) в папкуlibs
.Щелкните на нем правой кнопкой мыши и нажмите 'Добавить как библиотеку'
Убедитесь, что
compile files('libs/gson-2.2.4.jar')
находится в вашем файлеbuild.gradle
(илиcompile fileTree(dir: 'libs', include: '*.jar')
, если вы используете много jar файлов).Редактировать : Используйте
файлы реализации('libs/gson-2.2.4.jar')
(илиimplementation fileTree(dir: 'libs', include: '*.jar')
) в Android Studio 3.0+Выполните чистую сборку (вероятно, вы можете сделать это в Android Studio, но чтобы убедиться в этом, я перешел в терминале в корневую папку моего приложения и набрал
gradlew clean
. Я работаю на Mac OS X, в вашей системе команда может быть другой.После того, как я выполнил все вышеперечисленные четыре действия, приложение заработало нормально. Я думаю, что шаг 'Добавить как библиотеку' был тем, который я ранее пропустил, и он тоже не работал, пока я его не очистил.
[Редактировать - добавлен шаг
build.gradle
, который также необходим, как указали другие].Вот инструкции по добавлению локального файла jar в виде библиотеки в модуль:
! 2. В файле build.gradle добавьте следующее, чтобы закрытие ваших зависимостей имело:
gradlew
).Запустить
./ Gradlew собрать
. Это должно скомпилировать проект с библиотекой. При необходимости вам может потребоваться исправить ошибки в файле build.gradle.4.1. Щелкните правой кнопкой мыши модуль на левой панели и выберите «Открыть настройки библиотеки».
! 4.2. На левой панели диалогового окна выберите «Библиотеки».
4,3. Нажмите на знак
+
над панелью второй слева - >Java
Меню! 4,4. Выберите свою локальную банку и добавьте ее в проект.
В проекте щелкните правой кнопкой мыши
Следуйте скриншотам ниже:
1:
2:
3:
Вы увидите это:
В Android Stuido мне нравится использовать Gradle для управления Gson lib.
Добавьте ниже зависимость в файл build.gradle.
Все в порядке .
Вы также можете увидеть этот пост. [https://stackoverflow.com/questions/18555135/the-best-way-to-integrate-rathy-library-in-android-studio](https://stackoverflow.com/questions/18555135/the- лучший способ интеграции третьей стороны-библиотекарь-в-android
IIRC, простого использования "Добавить как библиотеку" недостаточно для компиляции с проектом.
Проверьте Intellij'help о добавлении библиотек в проект
Больше всего вас должно заинтересовать следующее:
Если библиотека не отображается в диалоге, добавьте ее в настройках Libraries, прямо под Modules.
Вам больше не придется добавлять
compile files()
, и библиотека будет правильно добавлена в ваш проект.Все эти решения устарели. Сейчас в Android Studio действительно легко:
Файл > Новый модуль...
Следующий экран выглядит странно, как будто вы выбираете виджет или что-то в этом роде, но сохраняете его на первом и нижнем снимках прокрутите и найдите «Импорт JAR или пакет .AAR»
Затем возьмите «Структура проекта» в меню «Файл». Выберите «app» в открытом окне, затем выберите «зависимости», затем нажмите «зеленую кнопку плюс», выберите «зависимость модуля», затем выберите импортированный модуль, затем нажмите «ОК»
'сбор файлов...раньше работал на меня, но не больше. после сильной боли я обнаружил, что использование этого вместо этого работает:
compile fileTree (dir: 'libs', включает: '* .jar')
Я понятия не имею, почему это имело значение, но, по крайней мере, эта чертова штука работает сейчас.
Я заставил это работать, просто добавив одну строку для build.gradle:
Не забудьте нажать «Синхронизация сейчас» в правом верхнем углу.
Я использую Android Studio 1.0.1.
Это решило мою проблему. Попробуйте, если кто-то хочет больше деталей, дайте мне знать.
Я нашел Dependency Manager в Android Studio довольно удобным и мощным для управления сторонними зависимостями (как упомянул здесь gson). Предоставление пошагового руководства, которое работало для меня (ПРИМЕЧАНИЕ. Эти шаги протестированы для Android Studio 1.6 и последующих версий на платформе Windows).
Шаг-1: Перейти к "Build > Редактировать библиотеки и зависимости...«Это откроет диалог« Структура проекта »
Шаг-2: Выберите «app», а затем выберите вкладку «Зависимости». Затем выберите «Добавить > 1 библиотечная зависимость»
Шаг-3: Будет отображаться диалоговое окно «Выбор зависимости библиотеки», указать «gson» в поиске и нажать «кнопку поиска»
Шаг-4: Желаемая зависимость будет отображаться в списке поиска, выберите com.google.code.gson: gson: 2.7 (это последняя версия на момент написания ответа), нажмите OK
Нажмите OK в диалоговом окне «Структура проекта». Gradle обновит ваши сценарии сборки соответствующим образом.
Надеюсь, это поможет :)
После того, как я сделал вышеупомянутые три, он начал работать нормально.
Вы можете сделать это с двумя вариантами.
первый простой способ.
Скопируйте файл .jar в буфер обмена, затем добавьте его в папку libs. Чтобы увидеть папку libs в проекте, выберите проект из combobox над папками.
затем щелкните правой кнопкой мыши файл .jar и нажмите «Добавить» в виде библиотеки, затем выберите модуль, затем все в порядке. Вы можете увидеть файл .jar в файле build.gradle в блоке зависимостей.
Второй способ заключается в следующем: мы можем добавить файл .jar в модуль, импортировав этот файл .jar в виде модуля .jar, а затем добавить этот модуль в любой нужный нам модуль.
модуль импорта --- > выберите файл .jar - > чем импортировать как .jar -- введите описание изображения здесь! Затем CTRL + ALT + SHIFT + S - > sturure проекта - > выберите модуль, который вы хотите, чтобы добавить банку - > Dependencendies - > Зависимость модуля. build.gradle модуля будет обновляться автоматически. введите описание изображения здесь!
Скачать & Скопируйте файл
.jar
в папкуlibs
, затем добавьте эту строку в build.gradle:Не забудьте нажать «Синхронизация сейчас»
Я сделал выше 3 шага и его рабочий шарм для меня.
(Я использую Android Studio 2.1.2)
Шаг 1
compile 'com.squareup.okhttp3: okhttp: 3.3.1'
) в скрипт сборки градлов в build.gradle (Модуль: приложение) .Шаг 2: Щелкните правой кнопкой мыши папку app - > Новый - > Модуль
Шаг 3: Нажмите Импортируйте пакет JAR / .AAR Затем просмотрите пакет. в качестве примера: OkHttp.jar
Поместите файлы
.jar
в папкуlibs
проекта Android.Затем добавьте эту строку кода в файл града приложения:
Для Android Gradle Plugin 3.0 и более поздних версий лучше использовать это вместо:
В отличие от Eclipse, нам не нужно загружать банку и помещать ее в папку / libs. Gradle обрабатывает эти вещи, нам нужно только добавить зависимости Gradle, Gradle загружает их и помещает в кэш Gradle.
Нам нужно добавить зависимости как:
зависимости {реализация 'com.google.code.gson: gson: 2.2.4'}
вот и все Однако мы также можем скачать банку & добавьте это как библиотеку, но лучшая практика - добавить зависимости Gradle.
С Android Studio 3+:
Вы просто сможете просто скопировать файл jar в папку libs прямо под папкой приложения.
myproject \ app \ libs \ myfile.jar... Затем выберите «Файлы проекта» в раскрывающемся списке в окне «Проекты», щелкните правой кнопкой мыши проект, выберите «Синхронизировать», чтобы увидеть файл в «Файлах проекта». Он автоматически добавит зависимости в файл града (Module: app).
Вот еще одно решение:
Перейдите в представление «Файлы проекта» (выберите «Файлы проекта» в раскрывающемся списке).
Выберите Новый... Каталог, создайте папку с именем libs прямо под приложением.
Откройте проводник файлов, скопируйте и вставьте файл банок в папку libs.
В Android Studio щелкните правой кнопкой мыши файл jar и выберите «Добавить как библиотеку»... из всплывающего меню.
Вы должны увидеть файл, указанный в списке зависимостей в файле градла:
Откройте ваш Java-файл и добавьте туда оператор импорта:
В Android Studio 1.1.0 . Я решил этот вопрос следующими шагами:
1: Поместите файл jar в каталог libs. (в Finder)
2: Откройте настройки модуля, перейдите в «Зависимости», в левом нижнем углу есть кнопка «плюс». Нажмите кнопку «плюс», затем выберите «Зависимость файла». Здесь вы можете увидеть файл jar. Выберите это, и это решено.