Что входит в репозиторий JCenter в Gradle?


148

Начиная с Gradle 1.7 появился новый публичный репозиторий JCenter.

repositories {  
   jcenter()  
}

Итак, я хочу спросить, все ли банки из Maven Central являются частью этого репо? А если не из чего состоит репо JCenter? И является ли JCenter более надежным по сравнению с Maven Central по причине простоя?


Ответы:


133

jcenter()похоже на mavenCentral(). Посетите https://bintray.com/bintray/jcenter для получения более подробной информации. Ребята из jCenter утверждают, что у них производительность лучше, чем у Maven Central.


33
Сейчас в jCenter нет maven-surefire-plugin версии 1.18.1, но в MavenCentral эта версия присутствует. Так что это не чистая надстройка mavenCentral ()
Xelian 06

Другим примером является AppEngine-апи-1,0-SDK: есть v1.9.22 в MavenCentral, но только v1.9.17 в jcenter.
naXa

9
По DOc jcenter() указывает jcenter.bintray.com и mavenCentral()к repo1.maven.org/maven2
real_paul

8
@Xelian, насколько я знаю, они ленивые и прозрачные. Таким образом, даже если это не показывает, что у них есть файл, вы можете ссылаться на него, и он будет служить вам должным образом после ленивой загрузки файла из другого источника .
TWiStErRob

У меня есть путь к классам в моем скрипте сборки в: org.javafxports: jfxmobile-plugin: 1.3.8 - до этого говорится jcenter(). Когда я использую google org.javafxports: jfxmobile-plugin: 1.3.8, я перехожу на bitbucket.org/javafxports/javafxmobile-plugin . это должно означать, что jcenter равно butbucket!
Lealo

22

Как упоминалось в https://bintray.com/bintray/jcenter :

JCenter - это место, где можно найти и поделиться популярными пакетами Apache Maven для использования Maven, Gradle, Ivy, SBT и т. Д. Для получения наиболее полной коллекции артефактов укажите свой Maven на: http://jcenter.bintray.com Хотите распространять собственные пакеты через JCenter? Вы можете связать свой пакет, нажав кнопку «Включить мой пакет». А если вам нравится устаревшая версия, вы даже можете синхронизировать свои пакеты напрямую с Maven Central.

Также я нахожу хорошее сравнение на https://www.jfrog.com/knowledge-base/why-should-i-use-jcenter-over-maven-central/ (к сожалению, ссылка мертва, но есть несколько полезных советов)

jcenter - это общедоступный репозиторий, размещенный на bintray, который можно бесплатно использовать для издателей библиотек с открытым исходным кодом. Есть много веских причин использовать jcenter вместо Maven Central. Вот некоторые из основных:

  1. jcenter предоставляет библиотеку через CDN, что означает улучшения в CI и сборках для разработчиков.
  2. jcenter - крупнейший репозиторий Java на Земле. Это означает, что все, что доступно в Maven Central, также доступно в jcenter.
  3. Выгрузить собственную библиотеку в bintray невероятно просто. Не нужно их подписывать или делать какие-либо сложные вещи, как это делается на Maven Central.
  4. Friendly-UI. Если вы хотите загрузить свою библиотеку в Maven Central, вы можете легко сделать это одним щелчком мыши на сайте Bintray.

Эта ссылка мертва: jfrog.com/knowledge-base/… и я не мог найти нигде, куда она была перемещена, чтобы обновить ее
Крис Р.

1
Нет необходимости искать ссылку (как я только что сделал на машине обратного пути), потому что Алиреза скопировал текст со связанной страницы в свой ответ.
JL_SO

10

Maven Central и JCenter в основном эквивалентны с точки зрения пользователя.

Причина, по которой существует 2 больших репозитория, заключается в том, что Maven Central поддерживается Sonatype, компанией, стоящей за Maven, и особенно за Nexus, репозиторием Maven, который они продают предприятиям.

JCenter поддерживается JFrog, компанией, стоящей за Artifactory, конкурентом Nexus. Насколько я помню, JFrog тоже какое-то время поддерживал Gradle как конкурент Maven.

В конце концов, речь идет о конкурирующих компаниях, предлагающих бесплатные услуги, чтобы попытаться привлечь клиентов к своим корпоративным предложениям более высокого уровня.

Если у вас нет очень конкретной причины использовать один из них, вы можете просто подбросить монету, чтобы выбрать один.


1

jCenter () содержит артефакты , которые не существуют в mavenCentral () , напримерcom/bmuschko/gradle-cargo-plugin/2.2.3/gradle-cargo-plugin-2.2.3.jar

Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.