Co zawiera repozytorium JCenter w Gradle?

141

Od wersji Gradle 1.7 pojawiło się nowe repozytorium publiczne JCenter.

repositories {  
   jcenter()  
}

Więc chcę zapytać, czy wszystkie słoiki z Maven Central są częścią tego repozytorium? A jeśli nie, z czego składa się repozytorium JCenter? Czy JCenter jest bardziej niezawodny z Maven Central jako przestój?

Xelian
źródło
3
Oto wszystko na temat przejścia z Maven Central do Jcenter .
Paresh Mayani

Odpowiedzi:

126

jcenter()jest podobny do mavenCentral(). Zajrzyj na https://bintray.com/bintray/jcenter, aby uzyskać więcej informacji. Faceci z jCenter twierdzą, że mają lepszą wydajność niż Maven Central.

Rene Groeschke
źródło
33
Teraz w jCenter nie ma wersji 1.18.1 wtyczki maven-surefire-plugin, ale w MavenCentral ta wersja prezentuje. Nie jest to więc czysty nadzbiór mavenCentral ()
Xelian
Innym przykładem jest appengine-api-1.0-sdk: istnieje wersja 1.9.22 w MavenCentral, ale tylko wersja 1.9.17 w jcenter.
naXa
9
Według doc jcenter() punktów do jcenter.bintray.com i mavenCentral()do repo1.maven.org/maven2
real_paul
8
@Xelian, o ile wiem, są leniwi i przejrzysty. Więc nawet jeśli nie pokazuje, że mają plik, możesz odwołać się do niego i będzie on działać poprawnie po leniwym pobieraniu pliku z innego źródła .
TWiStErRob
Mam ścieżkę klas w moim skrypcie kompilacji w: org.javafxports: jfxmobile-plugin: 1.3.8 - przed tym jest napisane jcenter(). Kiedy wyszukuję w Google org.javafxports: jfxmobile-plugin: 1.3.8, wchodzę na bitbucket.org/javafxports/javafxmobile-plugin . to musi oznaczać, że jcenter równa się butbucket!
Lealo
21

Jak wspomniano na https://bintray.com/bintray/jcenter :

JCenter to miejsce, w którym można znaleźć i udostępnić popularne pakiety Apache Maven do użytku przez Maven, Gradle, Ivy, SBT itp. Aby uzyskać najbardziej obszerną kolekcję artefaktów, skieruj swojego Mavena pod adresem: http://jcenter.bintray.com Chcesz rozpowszechniać własne pakiety za pośrednictwem JCenter? Możesz połączyć swój pakiet, klikając przycisk „Uwzględnij mój pakiet”. A jeśli interesujesz się tradycją, możesz nawet zsynchronizować swoje pakiety bezpośrednio z Maven Central.

Również dobre porównanie znajduję na https://www.jfrog.com/knowledge-base/why-should-i-use-jcenter-over-maven-central/ (niestety link wydaje się martwy, ale kilka przydatnych wskazówek jest tutaj)

jcenter to repozytorium publiczne hostowane w bintray, z którego mogą korzystać bezpłatnie wydawcy bibliotek open source. Istnieje wiele dobrych powodów, dla których warto używać jcenter zamiast Maven Central. Oto niektóre z najważniejszych:

  1. jcenter dostarcza bibliotekę za pośrednictwem CDN, co oznacza ulepszenia w CI i kompilacjach programistycznych.
  2. jcenter to największe repozytorium Java na świecie. Oznacza to, że wszystko, co jest dostępne w Maven Central, jest również dostępne w jcenter.
  3. Przesyłanie własnej biblioteki do programu bintray jest niezwykle łatwe. Nie musisz ich podpisywać ani robić skomplikowanych rzeczy, takich jak musisz na Maven Central.
  4. Przyjazny interfejs użytkownika Jeśli chcesz przesłać swoją bibliotekę do Maven Central, możesz to łatwo zrobić jednym kliknięciem w witrynie bintray.
Alireza Fattahi
źródło
Ten link jest martwy: jfrog.com/knowledge-base/ ... i nie mogłem znaleźć nigdzie, do którego został przeniesiony, aby go zaktualizować
Chris R,
1
Nie ma potrzeby wyszukiwania linku (tak jak właśnie zrobiłem na maszynie powrotnej), ponieważ Alireza skopiował tekst z połączonej strony do swojej odpowiedzi.
JL_SO,
10

Maven Central i JCenter są w większości równoważne z punktu widzenia użytkownika.

Powodem istnienia dwóch dużych repozytoriów jest to, że Maven Central jest wspierany przez Sonatype, firmę stojącą za Maven, a zwłaszcza za Nexus, repozytorium Maven, które sprzedają przedsiębiorstwom.

JCenter jest wspierany przez JFrog, firmę stojącą za Artifactory, konkurentem Nexusa. Z tego, co pamiętam, JFrog również przez jakiś czas wspierał Gradle, jako konkurent Mavena.

Ostatecznie chodzi więc o konkurencyjne firmy oferujące bezpłatne usługi, aby spróbować zwabić klientów do ich ofert korporacyjnych wyższego poziomu.

Jeśli nie masz bardzo konkretnego powodu, aby użyć jednego z nich, możesz w zasadzie rzucić monetą, aby wybrać jedną.

oblio
źródło
1

jCenter () zawiera artefakty, które nie istnieją w mavenCentral () na przykładcom/bmuschko/gradle-cargo-plugin/2.2.3/gradle-cargo-plugin-2.2.3.jar

Вячеслав Калякин
źródło