Avec Objis, spécialiste formation MAVEN (3j) et formation intégration continue (5j), maîtrisez la création de projet Maven avec le plugin archetype. Augmentez votre productivité en choisissant parmi 600 squelettes de projets Maven déja disponible. Comprenez mieux le plugin ‘archetype’. Enfin, découvrez le plugin d’aide ‘help’
Prérequis, outils et versions
Tutoriel Maven N°1 : Installation Maven
Objectifs
Maîtriser la création d’un projet MAVEN
Comprendre les types de squelettes prédéfinis
Comprendre le plugin maven archetype
Liens utiles
Page officielle plugin archetype
Programme
Partie 1 : Choix du type de projet
Partie 2 : Création du projet avec archetype:generate
Partie 3 : mieux comprendre le plugin archetype
Durée
30min
PUBLICITE : votre formation ‘Intégration continue’ avec Objis
Contexte
Vous êtes en charge de la réalisation d’un projet de développement Java/j2ee. Vous ne soughaitez pas partir ‘de zéro’. Vous avez compris qu’avec maven, vous pouvez bénéficier de plus de 600 ‘squelettes’ d’applications .
Partie 1 : Choix du type de projet
QUESTION : quel type de projet souhaitez-vous créer ? Un projet java simple ? un projet web (war) ? Ou bien une application modulaire impliquant Struts, Spring, hibernate ?
A partir de la version 2.2, Maven vous permet dès son installation de créer un projet basé sur un des 600 squelettes de projets déja prêt.
Dans un répertoire vide c:\formationmaven\TPs\TP2, lancez la commande : > mvn archetype:generate
Vous obtenez un résultat similaire à ceci :
Maven vous demande d’entrer le numéro du type de projet pour le que vous lui demandez de générer un squelette.
Afin de vous repérer vous avez besoin de mettre dans un fichier tous les numéros d’archetype. Pour cela faire:
mvn archetype:generate > arch_nums.txt
puis patientez 10 secondes et puis appuyez 3 fois sur [Crtl]-C
Vous pourrez ensuite faire des recherche dans le fichier arch_nums.txt.
Dans le cadre de ce tutoriel, nous allons choisir de créer un projet web complet (en vue de création d’un livrable type WAR)
Partie 2 : Création du projet
Entrez le chiffre correspondant au projet maven-archetype-webapp puis faîtes ENTREE
Tappez ENTREE pour choisir la version par défaut
Maven vous demande alors de préciser le ‘groupId’ de votre projet, et plus généralement les coordonnées MAVEN de votre projet.
REMARQUE : si vous ne choisissez pas de numéro et que vous tapez ENTREE Maven va créer le type correspondant au projet maven-archetype-quikstart générant un squelette de projet Maven d’une application java simple. Maven y crée un fichier source Main.java dans src/main/java et un fichier test dans src/test.
Coordonnées Maven du projet à créer
Tout projet Maven est caractérisé par des coordonnées :
— un GroupId
— un ArtifactId
— Un version
Les coordonnées Maven de notre projet Maven en cours de création sont :
— GroupId : com.objis.demomaven
— ArtifactId : ObjisWarProject
— version : 1.0
Entrez ces coordonnées Maven
Maven vous demande ensuite le package de vos classes. Par défaut il reprend le groupId.
Acceptez la valeur par défaut du package
Maven génère alors le squelette de votre projet.
Analysez les répertoires et fichiers de configuration que maven a créé.
ça y est : vous avez créé votre projet Maven !
ANALYSEZ le fichier pom.xml du projet et expliquez les différentes sections :
- coordonnées maven
- dépendences
- properties
- build
A quoi sert la section ‘PluginManagement’ présente dans la section ‘build’ ?
EXECUTER la phase maven ‘package’
Analysez chacune des ligne de la première partie des logs générés par cette commande
Analysez chacune des ligne de la deuxième partie des logs générés par cette commande
ANALYSEZ le contenu du répertoire ‘target’
Installez et démarrez manuellement un serveur d’application TOMCAT
Déployez manuellement le livrable dans un serveur d’application TOMCAT.
Accédez à l’application à partir d’un navigateur : http://localhost:8080/objisWarProject
Bravo ! Dans cette partie vous avez créé un squelette de projet web, avez packagé puis déployé dans un serveur.
QUESTION : comment déployer à travers Maven ?
Partie 3 : mieux comprendre le plugin archetype
RAPPEL : à tout plugin correspond des goals = taches pour utiliser une des taches (= savoir-faire) d’un plugin , lancer mvn plugin:tache (Ex : mvn archetype:generate) avec des paramètres (-Dparam1=valeur)
INFO : Le goal ‘describe’ du plugin maven ‘help’ vous permet de mieux connaître et comprendre d’autres plugins (taches, paramètres…)
Quel est par exemple le résultat des commandes suivantes ?
mvn help:describe -Dplugin=help
mvn help:describe -Dplugin=help -Ddetail
mvn help:describe -Dplugin=help -Dfull
mvn help:describe -Dplugin=help -Dmojo=system -Dfull
Application au plugin archetype
Quel est le résultat des commandes suivantes ?
mvn help:describe -Dplugin=archetype
mvn help:describe -Dplugin=archetype -Ddetail
mvn help:describe -Dplugin=archetype -Dfull
En déduire au moins 3 autres savoir-faire (goal) du plugin archetype (en plus de create et generate).
Conclusion
Vous savez désormais créer un projet Maven. Vous savez également mieux utiliser le plugin archetype pour générer le squelette d’un projet. Nous vous recommandons comme prochain TP le TP projet multimodules: web + service + domaine + dao