Découvrir MAVEN

MasterGeek
3 min readFeb 1, 2023

--

Apache Maven est un outil de gestion et d’automatisation de production des projets logiciels java. Plus particulierement pour automatiser l’integration continue (CI).

L’objectif est de produire un logiciel à partir des sources, en optimisant les taches.
Il utilise un paradigme connu sous le nom de Project Object Model (POM), afin de décrire un projet logiciel , ses dépendances, avec des modules externes ( sous les extensions .jar, .ear ) connu en java.

Rôles de Maven

Permet la compilation du code java , ou encore la modularisation
Fonctionne en réseau, ainsi permet de lier plusieurs projets indépendants

Permet de télécharger des dépendances d’autres dépôts logiciels

La synchronisation de ces derniers.

Ainsi le site maven repository vous pourrez chercher, de télécharger quelques dépendances officielles que nous pourrions utiliser dans nos projets java. C’est semblable à docker hub qui permet de télécharger les images officielles.

Exemple d’utilisation de maven

Supposons que nous voulons développer un client FTP pour envoyer, récupérer des médias sur un serveur FTP en java, bonne nouvelle sur le maven central nous pouvons trouver une dépendance à cet effet pour accomplir notre tache.

Tout d’abord rendons sur le site et faisons notre recherche comme ceci

recherche ftp module sur le site central maven.

Apres validation nous obtenons ceci:

Ensuite y’a plus qu’ à faire un choix parmi les dépôts proposés.

Apres cela, on copie la dépendance les balises

<dependency>
<groupId>org.apache.camel</groupId>
<artifactId>camel-ftp</artifactId>
<version>3.20.1</version>
</dependency>

la dite dépendance

On aura juste à coller celle-ci dans notre fichier pom.xml de notre projet Java, notre ide netbeans, eclipse etc va détecter le changement dans notre fichier pom.xml ,il va directement procéder à la mise à jour du projet en téléchargeant notre dépendance.

NB: Eclipse, netbeans viennent avec maven par défaut.

Vous l’aurez peut être deviner, maven étant un outils de gestion il est possible de l’utiliser sur votre terminal. Il suffit tout d’abord de le télécharger, se rendre sur le site officiel de la fondation Apache

https://maven.apache.org/download.cgi, pour suivre les préréquis pour son installation. Après vous pourrez vous amuser à tester les commandes maven, pour cela se rendre sur la documentation officiel.

Chaque projet web est configuré par un POM qui contient les informations nécessaires à Maven pour traiter le projet
Le fichier POM sous l’extension .xml contient les informations détaillées du projet

Maven impose une arborescence et un nommage des fichiers du projet selon les conventions plutôt que les configurations.

Les buts principaux du cycle de vie Maven sont:
— compile
— test
— package
— install
— deploy

Gestion de dépendances

La gestion de dépendance de l’outils Maven s’appuie sur 2 notions:
→ l’héritage
→ la transitivité : se base sur la notion de dépendance ( tel dépend de)
ainsi si un projet A depend d’un projet B, et B dépend d’un projet C alors A depend de C.

--

--

MasterGeek

I'm a Software Developer, tech lover i like help other to learn more and progress