Java – Migrer de Bintray (JCenter) à Maven Central

Créé le: 2021/02/14 ; Révisé le: 2021/02/14
Thumbnail

Nouvelle du 3 février 2021

Bintray vient d’annoncer que leur service va fermer. À partir du 31 mars 2021, il ne sera plus possible de publier de nouvelles versions de nos librairies Java sur Bintray et aussi sur JCenter. Leur but est de fermer JCenter le 1er février 2022.

En quoi est-ce un problème?

Avant que JCenter existe, l’endroit par excellence où publier les librairies en sources libres était Maven Central. Par contre, pour y arriver, il fallait se créer un certificat pour signer les fichiers JAR, se créer un compte et configurer tous nos projets pour avoir toutes les métadonnées utiles et signer les artéfacts. C’était quand même lourd comme processus d’entrée, mais une fois fait, c’est ensuite simple de continuer à utiliser.

Quand Bintray est arrivé avec son JCenter, son utilisation était beaucoup plus simplifiée. Il suffisait de créer un compte, d’utiliser leur extension Gradle et de publier les fichiers. Aucune signature électronique n’était requise. C’était tellement merveilleux que beaucoup de projets ont utilisé JCenter comme endroit où publier leur projet, mais aussi d’où télécharger les dépendances puisque JCenter copie aussi ce qui provient de Maven Central. Par exemple, un nouveau projet sur Android Studio utilise JCenter par défaut.

Solution

Tout « simplement » migrer à Maven Central. Je vais essayer de rendre cela plus simple en vous montrant les étapes dans la vidéo ci-haut. Les instructions officielles en anglais sont disponibles ici.

  • Créer un compte Jira sur Sonatype (00:08)
  • Créer un ticket pour le « groupe » Maven (00:40)
  • Prouver que nous possédons le « groupe » (03:20)
  • Créer une clé et un certificat pour signer (05:05)
    • gpg –gen-key (05:33)
    • gpg –list-keys (06:23)
    • gpg –export-secret-keys > ~/.gnupg/secring.gpg (06:32)
    • gpg –keyserver hkp://pool.sks-keyservers.net –send-keys XXXXXX (07:19)
    • gpg –send-keys XXXXXX (07:55)
  • Créer ~/.gradle/gradle.properties (08:27)
    • gpg –list-keys –keyid-format short (09:29)
  • Modifier le fichier « build.gradle » (11:21)
  • Créer une version et la téléverser sur OSSRH (20:30)
  • Fermer et déployer
    • https://oss.sonatype.org/#stagingRepositories (21:11)
    • Vérifier les fichiers (21:41)
    • Cocher et fermer (22:15)
    • Cocher et « Release » (22:44)
    • https://repo1.maven.org/maven2/ (23:27)