Если вы настроили код как простой Java-модуль в Gradle, то Gradle очень легко получить файл jar с содержимым. В этом файле jar будет только ваш код, а не другие библиотеки Apache, от которых он зависит. Я бы рекомендовал распространять его таким образом; немного странно связывать зависимости внутри вашей библиотеки, и для пользователей этих библиотек более нормально включать эти зависимости самостоятельно (потому что в противном случае возникают коллизии этих проектов, которые уже связывают копии библиотеки, возможно, разных версий ). Более того, вы избегаете потенциальных проблем с лицензированием, связанных с распространением чужого кода, если вы публикуете свою библиотеку.
Возьмите код, который также необходимо скомпилировать в банку, и переместите его в отдельный простой модуль Java в Android Studio:
- Меню Файл > Новый модуль ... > Библиотека Java
- Настройте библиотеку, имя пакета Java и имена классов в мастере. (Если вы не хотите, чтобы он создавал для вас класс, вы можете просто удалить его после создания модуля)
- В вашем коде Android настройте зависимость от нового модуля, чтобы он мог использовать код из вашей новой библиотеки:
- Файл > Структура проекта > Модули > (ваш модуль Android) > Зависимости > + > Зависимость модуля . Смотрите скриншот ниже:
- Выберите свой модуль из списка в появившемся диалоговом окне:
Надеюсь, ваш проект теперь должен строиться нормально. После того, как вы выполните сборку, файл jar для вашей библиотеки Java будет помещен в каталог build / libs в каталоге вашего модуля. Если вы хотите создать файл jar вручную, вы можете запустить его задачу файла сборки jar из окна Gradle: