Versioning & Packages

Maven vers Gradle

Convertir les dépendances à partir de XML, d’appels Gradle ou de coordonnées, puis choisir le format de destination.

Maven vers Gradle

Dépendances en entrée

Déclarations converties

La conversion se fait dans ce navigateur. Les déclarations ne sont ni téléversées ni envoyées à un dépôt.

Coordonnées : g:a[:v[:classifier]]. Un appel ou une coordonnée par ligne ; accolades sur des lignes séparées.

65 536 caractères et 200 dépendances au maximum. Modules externes littéraux uniquement, sans projet complet.

Entrée ou options modifiées. Relancez avant d’exporter.

Maven vers Gradle sert quand la documentation d’une bibliothèque montre une syntaxe différente de celle du projet. Isolez les déclarations utiles, sans parent, dépôt ni configuration de plugin.

Le résultat est un extrait à intégrer. Une syntaxe convertie ne garantit ni l’existence de la version dans un dépôt ni la résolution du graphe de dépendances.

Pourquoi passer de Maven vers Gradle ici ?

Garder les coordonnées ensemble

Maven vers Gradle conserve le groupe, l’artefact, la version et le classificateur. Les champs XML deviennent des déclarations Groovy ou Kotlin ; le passage entre DSL préserve une configuration Gradle prise en charge.

Des champs de coordonnées colorés passent d’une carte XML à deux déclarations compactes

Rendre visibles les choix de classpath

Un scope Maven n’a pas toujours un équivalent exact. Les remarques du résultat attirent l’attention sur l’exposition de l’API et les dépendances de test, avant l’intégration dans le projet.

Les marqueurs de scope et de classificateur traversent le convertisseur tandis qu’un projet entier est arrêté

Choisir la notation et le contexte

01

Vérifier le quatrième champ

La détection accepte XML, appels Gradle pris en charge et une coordonnée par ligne. La notation est g:a[:v[:classifier]] : le quatrième champ est un classificateur, jamais le packaging Maven.

02

Choisir ce que la bibliothèque expose

compile et les coordonnées seules produisent implementation par défaut. Choisissez api pour une bibliothèque Java qui expose cette dépendance. Une configuration Gradle existante reste prioritaire lors du changement de DSL.

03

Attendre le résultat actualisé

Le mode automatique attend 350 ms après la saisie. Désactivez-le pour lancer avec Ctrl/Cmd + Enter. Toute modification bloque immédiatement les exports jusqu’à la génération d’un résultat à jour.

Les détails conservés dans les déclarations

Gradle vers Maven

La conversion accepte implementation, api, compileOnly, runtimeOnly et trois configurations de test. Le XML omet compile, scope par défaut, et écrit explicitement les autres scopes reconnus.

Groovy et Kotlin DSL

Groovy utilise des apostrophes ; Kotlin DSL utilise des parenthèses et des guillemets doubles. api ou testRuntimeOnly gardent leur nom lors du passage direct entre ces deux formats.

Classificateurs et versions gérées

Le quatrième segment devient classifier en XML. Une version absente reste absente, avec un rappel : une BOM, une plateforme ou une gestion existante doit la fournir. Un classificateur exige une version explicite.

Lots et bloc facultatif

Jusqu’à 200 déclarations sont conservées dans leur ordre, doublons compris. Le bloc dependencies est facultatif et suit la syntaxe cible. Les commentaires et les espaces d’origine ne sont pas conservés.

Ce qu’un extrait ne permet pas de migrer

Pas de projet complet
Un pom.xml ou build.gradle entier contient parfois plugins, profils, dépôts et héritage. Ces structures sont refusées. Utilisez des outils de migration de projet et vérifiez le résultat par une vraie compilation.
Modules externes littéraux uniquement
Variables, interpolation, versions dynamiques, plages, maps, closures, project(), files(), platform() et alias de catalogue sont refusés. Les champs acceptent lettres ASCII, chiffres, tirets, points et traits de soulignement.
Métadonnées non prises en charge refusées
optional, exclusions, scopes system/import et types autres que jar provoquent une erreur. Il en va de même des champs ou attributs inconnus, DTD et instructions de traitement. Aucun export partiel ne masque ces pertes.
Relire les correspondances de scopes
compile devient implementation ou api, provided devient compileOnly, runtime devient runtimeOnly et test devient testImplementation. Le retour vers Maven fusionne des distinctions : classpath de test et publication ne sont pas nécessairement équivalents.
Limites et syntaxe par ligne
Au plus 65 536 caractères et 200 dépendances. Chaque appel Gradle ou coordonnée occupe une ligne ; les accolades du bloc ont leurs propres lignes. Aucune vérification de version, de dépendance transitive ou de conflit n’est effectuée.

Questions sur Maven vers Gradle

Comment représenter les attributs type et scope de Maven dans Gradle ?

Les quatre scopes suivent les correspondances décrites dans les règles. type doit être absent ou valoir jar. test-jar et pom ont une signification d’artefact ou de plateforme qui dépasse un simple changement de champ.

Peut-on convertir une dépendance sans numéro de version ?

Oui. group:artifact et XML sans version sont acceptés. Aucune version n’est inventée ; une BOM, une plateforme ou la gestion de dépendances déjà configurée doit fournir celle de la déclaration produite.

Les propriétés telles que ${spring.version} sont-elles prises en charge ?

Non. Résolvez d’abord la propriété et collez sa valeur littérale. Copier une expression Maven dans une chaîne Gradle pourrait changer son sens ; aucun script n’est évalué ici.

Comment transformer build.gradle en Groovy en build.gradle.kts en Kotlin ?

Choisissez Kotlin et collez les appels de dépendance pris en charge. Les parenthèses et guillemets sont adaptés. Il faut migrer séparément les tâches, plugins, maps et autres instructions Groovy.

Existe-t-il un convertisseur en ligne de Gradle vers Maven ?

Cette page assure Gradle vers Maven pour des extraits de dépendances. Elle ne crée pas un POM complet depuis build.gradle : dépôts, plugins, publication et structure des modules restent à migrer.

Une question reste ouverte ?

Vérifier la déclaration dans son contexte

Avec Maven vers Gradle, générez le nouvel extrait, relisez les remarques de scope et copiez le résultat à jour dans le bon bloc dependencies.