Недавно я создал стороннюю библиотеку для Java. В настоящее время я распространяю библиотеку через Github и собственный веб-сайт, на котором я могу загрузить файл JAR. Я хочу сделать так, чтобы разработчики могли использовать Gradle и Maven (и, возможно, другие инструменты автоматизации сборки), чтобы легко включать мою стороннюю библиотеку в свои проекты.
Я новичок в Maven, Gradle, Bintray, JCenter, MavenCentral, Ivy и т. Д. Однако у меня есть опыт работы с Ant, Java и Linux.
Я пытался узнать, как опубликовать свою стороннюю библиотеку, используя указанные выше инструменты / платформы, но я запутался.
- Судя по тому, что я читал, Gradle, Maven и Ant - конкурирующие технологии. Итак, почему же тогда, в контексте реальных сценариев использования, Gradle, похоже, так тесно переплетен с Maven?
- Bintray рекламирует себя как платформу для публикации и распространения программного обеспечения. Итак, почему возникла необходимость создавать JCenter как нечто отличное от остальной части Bintray? Что может JCenter, чего не может Bintray?
- Я создал тестовый пакет и версию на Bintray и загрузил в эту версию файл JAR. Можно ли написать сценарий Gradle, который сможет включить этот файл JAR в качестве зависимости в проект Java? Или пакет нужно «связать» с JCenter?
В принципе, может ли кто-нибудь сказать мне, что происходит со всеми вышеперечисленными технологиями? Не считайте себя обязанным давать ответы на все предложения в этом посте, оканчивающиеся вопросительным знаком. Эти вопросы в первую очередь предназначены для демонстрации моего текущего уровня понимания. Было бы здорово сделать простой обзор того, как технологии работают вместе, и, если возможно, ответ на вопрос в заголовке этого поста.