Публикация вашей библиотеки Android: локальный путь
1 ноября 2023 г.Введение
Если вы когда-либо разрабатывали библиотеку Android, предназначенную для использования в нескольких проектах, вы, вероятно, сталкивались с необходимостью опубликовать ее для тестирования и интеграции в целевые приложения. Традиционно библиотеки Android публикуются в удаленных репозиториях, таких как MavenCentral или JCenter. Однако бывают ситуации, когда публикация в удаленном репозитории может быть не самым эффективным и удобным вариантом. Это может быть связано с частыми изменениями в вашей библиотеке или проблемами с подключением к Интернету. В таких случаях использование локального репозитория Maven может быть практичной и экономящей время альтернативой. В этой статье мы рассмотрим, как опубликовать библиотеку Android локально и интегрировать ее в свои проекты.
Что такое локальный репозиторий Maven
Maven local — это, по сути, репозиторий, но он расположен на вашем компьютере. Этот локальный репозиторий служит местом хранения зависимостей вашего проекта. Местоположение локального репозитория Maven по умолчанию может различаться в зависимости от операционной системы вашего компьютера:
- Mac: /Users/[имя пользователя]/.m2
- Linux: /home/[имя пользователя]/.m2
- Windows: C:Users[имя пользователя].m2
Публикация вашей библиотеки локально
Чтобы опубликовать свою библиотеку локально, выполните следующие действия:
- Создайте файл Gradle. Перейдите к модулю вашей библиотеки и создайте файл Gradle с именем
publishLocal.gradle
. Этот файл будет содержать необходимый код для локальной публикации библиотеки. - Настройте файл Gradle: В файле
publishLocal.gradle
включите следующий код внутри блокаbuild.gradle
:
ол> - Используйте свой проект в качестве библиотеки. После выполнения этих шагов ваш проект можно будет использовать в качестве библиотеки. ол>
- Настроить
settings.gradle
: откройте файлsettings.gradle
вашего проекта и укажитеmavenLocal()
в качестве репозиторий:
ол> - Скомпилируйте и проверьте. Наконец, скомпилируйте проект и убедитесь, что ваша библиотека правильно импортирована. ол>
Javascript
project.afterEvaluate {
публикация {
публикации {
библиотека (MavenPublication) {
setGroupId идентификатор группы
setArtifactId — идентификатор артефакта
версия android.defaultConfig.versionName
комплект артефактовReleaseAar
}
}
}
Кроме того, укажите следующую информацию:
id 'maven-publish'
def artifactId = 'testlibCompose'
def groupId = 'android.example.testlibCompose'
versionName "11.0"
Обязательно удалите все ненужные плагины и конфигурации
Публикация в Maven Local
Если вы проверите дерево задач Gradle, вы найдете различные задачи, доступные для публикации. В зависимости от ваших потребностей вы можете запускать эти задачи. Успешное выполнение publishToMavenLocal
сделает вашу библиотеку доступной в локальном репозитории.
Интеграция вашей библиотеки в проект
Чтобы импортировать вашу библиотеку в другое приложение или модуль Android, выполните следующие действия:
Javascript
dependencyResolutionManagement {
репозитории {
mavenLocal()
}
код>
2. Подключите библиотеку: В файле
build.gradle
на уровне приложения или модуля добавьте свою библиотеку в качестве зависимости:
Javascript
зависимости {
реализация 'android.example.testlib:testlibVersion:1.0'
Формат идентификатора вашей библиотеки должен соответствовать указанному вами ранее: groupId:artifactId:versionName
.
Заключение
Сегодня мы рассмотрели альтернативный подход к публикации библиотек Android, который может упростить процесс разработки. Настроив файл Gradle для публикации вашей библиотеки в локальном репозитории Maven , вы можете ускорить тестирование и интеграцию вашей библиотеки в различные проекты. Эта статья предоставляет вам еще один ценный инструмент для повседневной работы разработчика библиотеки Android. С помощью этого метода вы сможете эффективно управлять своими библиотеками и тестировать их без необходимости использования удаленного репозитория.
Оригинал