Maven - Utiliser Maven pour la première fois

Table des matières
Dans le tutoriel précédent, nous avons vu comment installer Maven sur votre ordinateur, nous avons créé notre premier projet (bien qu'il consistait essentiellement à appuyer sur Entrée comme 10 fois) et je vous ai laissé revoir ce premier projet que Maven a créé automatiquement, en particulier le "pom. xml". qui est pratiquement le cœur de votre projet dans Maven.
Dans ce tutoriel, nous verrons ce que fait Maven, quelles sont toutes ces balises contenues dans le fichier POM, ce qu'elles signifient et comment commencer à tirer parti de cet outil.
Nous allons passer en revue les étapes pour créer notre premier projet plus en détail, pour cela vous devez avoir déjà installé Java et Maven, que vous pouvez revoir dans mon précédent Tutoriel.
Nous ouvrons d'abord notre ligne de commande et exécutons la commande "mvn -version" (mvn -v) pour vérifier que Maven est installé. Une fois vérifié, on va dans le dossier où l'on veut créer notre projet avec la commande cd (dans mon cas "cd mavenArchetypes") et on écrit la commande "mvn archetype:generate" pour nous présenter la liste des archétypes trouvés dans le Dépôt Maven (Ils sont un grand nombre d'archétypes).

Commandes initiales

AGRANDIR

2 premières pages de la liste des archétypes existants au 07/08/2014

A la fin de la liste des archétypes Maven vous demande de choisir un nombre qui correspond à l'une des options de la liste (ce qui serait impossible sans connaître les nombres par cœur) et vous donne un nombre par défaut (dans mon cas 438) qui correspond à l'archétype "maven-archetype-quickstart" ou vous appliquez un filtre qui se traduit par le placement d'un mot qui vous permet de filtrer cette liste géante en une liste plus gérable et liée à ce que vous recherchez. Supposons que vous mettiez le mot "spring" il vous présentera la liste de tous les archétypes basés sur le framework Spring.
Nous allons rester avec l'archétype par défaut, alors appuyez simplement sur Entrée, après quoi il vous présentera une liste de versions de l'archétype sélectionné où nous choisissons la dernière version en appuyant à nouveau sur Entrée.
Enfin, il vous demandera les données qui permettront d'identifier votre projet, qui sont :
ID de groupeReprésente votre "propre référentiel de projet", tous les projets que vous générez avec le même groupId seront conservés ensemble, dans cet exemple particulier, ma recommandation est que vous mettiez le nom du package de base de votre projet, dans le mien c'est "org. manuel.maven ».
ID de l'artefactC'est l'identifiant de votre projet, car il s'agit d'un projet de test, je l'ai appelé "MavenTestApp".
versionExplicite, le numéro de version du projet, par défaut, Maven suggère "1.0-SNAPSHOT" qui représente la première version de développement d'un projet.
paquetC'est le package principal de votre projet, par défaut Maven lui donne le nom du "GroupId" qui dans ce cas est "org.manuel.maven".
À la fin, il vous montrera un résumé et demandera votre confirmation (il vous suffit d'appuyer une fois de plus sur Entrée ou de taper « N » pour demander à nouveau les données) et c'est tout ! Vous avez déjà votre premier projet Maven.
Nous avons maintenant un dossier appelé MavenTestApp où se trouve un dossier src dans lequel se trouvent un fichier "pom.xml", un dossier "principal" et un dossier "test". Dans le dossier "principal" nous localiserons tous les fichiers sources de notre application, dans le dossier "test" les fichiers de test correspondants seront placés (ces tests sont effectués avec une librairie appelée JUnit que nous verrons dans un autre tutoriel plus tard) et le fichier POM contient les attributs clés de notre projet et, lors de son ouverture avec un éditeur de texte (j'utilise Notepad ++), il devrait ressembler à ceci :

AGRANDIR

Voyons le document en plusieurs parties :
  • Les 2 premières lignes déclarent l'espace de noms XML et le schéma qui se rapportent à XML.
  • La balise "modelVersion" indique à quelle version du descripteur de projet appartient ce POM.
  • "GroupId", "artifactId" et "version" correspondent au projet particulier et je les ai déjà expliqués ci-dessus.
  • La balise « packaging » indique à Maven comment packager notre projet une fois qu'il est construit. Dans ce cas c'est un .jar, s'il s'agissait d'une application métier ça pourrait être un .ear, s'il s'agissait d'une application web ce serait un .war.
  • Finalmente la etiqueta “dependencies” señala el inicio de la lista de dependencias del proyecto, dentro de esta etiqueta cada dependencia se coloca entre las etiquetas “dependency” y en ellas señalas el groupId, artifactId y la versión de la dependencia que le quieras agregar al projet. Dans ce cas, par défaut, il est inclus dans les dépendances de la bibliothèque JUnit, qui est celle en charge de tester notre code.
Dans la dépendance, il existe également une étiquette appelée "portée" qui indique quel processus doit être en cours d'exécution pour que la dépendance correspondante soit appliquée. Ce fichier POM est le cœur de notre projet et nous pouvons y ajouter des dépendances au fur et à mesure que notre projet grandit.
Maven est géré à l'aide d'un "référentiel" d'informations auquel il accède automatiquement lors de son exécution et à partir duquel il obtient essentiellement 2 choses :
Informations sur les archétypesMaven contient un référentiel où il maintient plusieurs modèles, appelés "archétypes" d'applications qui sont des squelettes composés de la structure de base d'un type particulier d'application, dans le cas de l'archétype de démarrage rapide Maven, la structure correspondante est celle que nous avons actuellement
Informations sur les dépendancesC'est l'autre élément clé de Maven, qui est la relation de dépendance qui existe entre une bibliothèque et une autre. Par exemple, le framework "Spring" dépend de la bibliothèque Apache Commons Logging. Ces informations sont stockées dans le référentiel Maven de telle manière que lorsque vous souhaitez utiliser Spring, vous n'avez qu'à déclarer la dépendance Spring dans votre fichier POM et Maven s'occupe AUTOMATIQUEMENT de télécharger et d'utiliser correctement la bibliothèque Apache dont il a besoin.
Pour ces raisons simples, vous devez disposer d'une connexion Internet lorsque vous utilisez Maven, car vous devez pouvoir accéder au référentiel externe pour trouver les dépendances dont vous avez besoin.
N'est-ce pas fantastique !? Personnellement, j'ai téléchargé plus d'une fois une bibliothèque pour me rendre compte que j'avais besoin d'une autre bibliothèque supplémentaire pour que la première n'échoue pas. Avec Maven, j'ai juste besoin de pointer vers la bibliothèque que je veux utiliser dans le fichier POM et FAIT ! Maven s'occupe de télécharger tout ce dont j'ai besoin.
Si je ne vous ai toujours pas convaincu d'arrêter de créer du code comme vous le faites actuellement et de commencer à utiliser Maven, attendez que nous puissions l'utiliser dans Eclipse, créez des applications Web en quelques clics et mélangez Spring et Hibernate dans la même application, j'espère vous continuez à me lire dans le prochain tutoriel et n'oubliez pas de laisser vos commentaires, jusqu'à la prochaine fois !
Avez-vous aimé et aidé ce tutoriel ?Vous pouvez récompenser l'auteur en appuyant sur ce bouton pour lui donner un point positif

Vous contribuerez au développement du site, partager la page avec vos amis

wave wave wave wave wave