Как добавить библиотеку Java из своего репозитория GitHub (библиотека использует Maven как систему сборки) в качестве зависимости от моего проекта Maven? Могу ли я это сделать без загрузки и компиляции библиотеки?
Загрузка зависимостей Maven от GitHub
Ответ 1
Теперь вы можете импортировать библиотеку Java из репо GitHub с помощью JitPack. В вашем pom.xml:
- Добавить репозиторий:
<repository>
<id>jitpack.io</id>
<url>https://jitpack.io</url>
</repository>
- Добавить зависимость
<dependency>
<groupId>com.github.User</groupId>
<artifactId>Repo name</artifactId>
<version>Release tag</version>
</dependency>
Это работает, потому что JitPack проверит код и построит его. Таким образом, вы в конечном итоге загрузите банку.
Если проект не имеет версии GitHub, тогда можно использовать идентификатор фиксации в качестве версии.
Ответ 2
В настоящий момент вы не можете сделать это, если разработчик библиотеки не предоставит вам способ сделать это.
Итак, на титульной странице библиотеки должна быть инструкция, содержащая адрес репозитория, например:
<repositories>
<repository>
<id>YOUR-PROJECT-NAME-mvn-repo</id>
<url>https://raw.github.com/YOUR-USERNAME/YOUR-PROJECT-NAME/mvn-repo/</url>
<snapshots>
<enabled>true</enabled>
<updatePolicy>always</updatePolicy>
</snapshots>
</repository>
</repositories>
И имя зависимостей:
<dependency>
<groupId>...</groupId>
<artifactId>...</artifactId>
<version>...</version>
</dependency>
Это означает, что все артефакты вашего проекта, включая вашу зависимость, будут найдены в этом репо.
Вы также можете взглянуть на pom.xml
, чтобы проверить, были ли предприняты попытки развернуть артефакты для удаленного репо. Обычно ключевыми словами являются oss.sonatype.org или raw.github.com, как в этом случае.
FYI, вот способ предоставить репо для вашего артефакта gihub: Хостинг репозитория Maven на github.