0% ont trouvé ce document utile (0 vote)
5 vues15 pages

Maven

Maven est un outil de construction open source développé par Apache, conçu pour automatiser la gestion des projets JavaEE. Il facilite la gestion des dépendances, la compilation et le déploiement des applications grâce à un modèle de projet basé sur un fichier de configuration XML (POM). Le document présente également la structure d'un projet Maven, les balises POM, ainsi que les commandes de base pour gérer le cycle de vie d'un projet.

Transféré par

Rihab IDOUDI
Copyright
© © All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd
0% ont trouvé ce document utile (0 vote)
5 vues15 pages

Maven

Maven est un outil de construction open source développé par Apache, conçu pour automatiser la gestion des projets JavaEE. Il facilite la gestion des dépendances, la compilation et le déploiement des applications grâce à un modèle de projet basé sur un fichier de configuration XML (POM). Le document présente également la structure d'un projet Maven, les balises POM, ainsi que les commandes de base pour gérer le cycle de vie d'un projet.

Transféré par

Rihab IDOUDI
Copyright
© © All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd

Maven

P R ÉSENTÉE PA R :
R I HA B I DOUDI
R I HA B. I DOUDI@ ESPRIT.TN

© 2019 – ESPRIT
© 2019 – ESPRIT
Plan
–C’est Quoi Maven?
–Objectif du Cours
–Création d’un Projet Maven
–Balises POM.XML
–Arborescence Standard
–Buts (Goals)
–Tests
–TP : Projet Sans Maven, Projet Avec Maven

© 2019 – ESPRIT
C’EST QUOI MAVEN?

• Maven est un outil de construction de projets (build) open source développé


par la fondation Apache.

• Il permet de faciliter et d'automatiser certaines tâches de la gestion d'un


projet JavaEE.

© 2019 – ESPRIT
Sans Maven :Difficultés
• Recherche des dépendances sur internet ⇒ perte de temps
• Faire pointer le projet sur un chemin local ⇒ projet qui fonctionne
qu’en local
• Mettre les dépendances dans le projet ⇒ mauvaise pratique
• Compiler avec la ligne de commande ⇒ compliqué
• Utilisation de l’IDE pour compiler ⇒ quoi faire pour livrer ?

© 2019 – ESPRIT
Fonctionalités
• Fonctionnalités
◦ Automatisation de tâches récurrentes
◦ Construction, compilation des projets Gestion des dépendances
◦ Gestion du code source
◦ Génération de la documentation et de rapports Déploiement d'applications

• Modèle de projet basé sur des conventions (POM: Project Object Model)
◦ Configuration basée sur le format XML

© 2019 – ESPRIT
CRÉATION D’UN PROJET MAVEN

© 2019 – ESPRIT
La structure par défaut d’un projet Maven
• pom.xml : le fichier de configuration du projet
• /src : code source et fichiers source principaux
• /src/main/java : code source java
• /src/main/resources : fichiers de ressources (images, fichiers config...)
• /src/main/webapp : webapp du projet
• /src/test : fichiers de test
• /src/test/java : code source Java de test
• /src/test/resources : fichiers de ressources de test
• /target/site : informations sur le projet et/ou les rapports générés
suites aux traitement effectués
• /target : fichiers résultat, les binaires (du code et des tests), les
packages générés et les résultats des tests

© 2019 – ESPRIT
Le POM (Project Object Model)
modelVersion : La version du modèle de POM utilisée
groupId : Le groupe ou l'organisation qui développe le projet. C'est une des clés utilisée pour identifier de
manière unique le projet et ainsi éviter les conflits de noms.
artifactId : C’est le nom du livrable sans version (jar, ear ...).
version : La version en cours du projet (Le suffixe -SNAPSHOT indique une version en cours de
développement).

© 2019 – ESPRIT
Le POM (Project Object Model)
La balise <dependencies> devra
contenir toutes les dépendances
nécessaires au fonctionnement
du projet.

Moteur de recherche des


dépendances Maven :
http://mvnrepository.com

© 2019 – ESPRIT
Le POM (Project Object Model)
Pour utiliser ce plugin : mvn compile exec:java
exec : l’identifiant du plugin
java : l’identifiant du goal

© 2019 – ESPRIT
Le POM (Project Object Model)

maven.compiler.target et
maven.compiler.source sont les
propriétés du plugin Apache
Maven Compiler Plugin, c’est le
plugin qui nous permet de
compiler notre projet Java, ces
propriétés sont utiles pour
spécifier la version du compilateur
souhaitée (source et target).

© 2019 – ESPRIT
BUTS (GOALS)
mvn compile : Créer les .class

mvn test : Jouer les tests unitaires

mvn package : Creation du livrable dans target.

mvn install : Copie du livrable dans le Repository local : ~\.m2\repository\...

mvn deploy : Copie du livrable sur le repository distant

mvn clean : Supprime le contenu du dossier target

© 2019 – ESPRIT
Maven Workflow

© 2019 – ESPRIT
Exemple

© 2019 – ESPRIT

Vous aimerez peut-être aussi