English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية

Tutorial Maven

Ce tutoriel est préparé pour les débutants pour les aider à comprendre les fonctionnalités de base de l'outil Maven. Après avoir terminé ce tutoriel, vous découvrirez que vous avez un niveau de connaissances professionnel moyen en matière d'Apache Maven, à partir duquel vous pouvez passer à un niveau supérieur.

Maven se traduit par "expert" ou "connaissant", c'est un projet open source développé en pur Java sous Apache. Basé sur le concept du modèle d'objet de projet (abréviation : POM), Maven utilise un fragment d'information central pour gérer les étapes de construction, de rapport et de documentation d'un projet.

Maven est un outil de gestion de projet qui peut construire et gérer des projets Java.

Maven peut également être utilisé pour construire et gérer divers projets, tels que des projets écrits en C#, Ruby, Scala et d'autres langages. Maven était un sous-projet de Jakarta, et est maintenant un projet Apache indépendant sous la direction de la Fondation Apache.

Connaissances nécessaires avant de lire ce tutoriel

Ce tutoriel est principalement destiné aux débutants pour les aider à apprendre les fonctionnalités de base de l'outil Maven. Après avoir terminé ce tutoriel, votre niveau de connaissances sur Apache Maven atteindra un niveau moyen, après quoi vous pouvez apprendre des connaissances plus avancées.

Pour lire ce tutoriel, vous devez avoir les bases suivantes :Base Java

Fonctionnalités de Maven

Maven peut aider les développeurs à accomplir les tâches suivantes :

  • Construction

  • Génération de documents

  • Rapports

  • Dépendances

  • SCMs

  • Publication

  • Distribution

  • Liste de diffusion

Configuration conventionnelle

Maven recommande l'utilisation d'une structure de répertoire standardisée, Maven utilise le principe de convention plutôt que de configuration, et les utilisateurs devraient suivre cette structure de répertoire le plus possible. Voici un exemple :

RépertoireObjectif
${basedir}Contient pom.xml et tous les sous-répertoires
${basedir}/src/main/javaLes fichiers sources java du projet
${basedir}/src/main/resourcesRessources du projet, par exemple les fichiers property, springmvc.xml
${basedir}/src/test/javaLes classes de test du projet, par exemple le code JUnit
${basedir}/src/test/resourcesRessources utilisées pour les tests
${basedir}/src/main/webapp/WEB-INFRépertoire de fichiers d'application web, informations sur le projet web, par exemple le stockage de web.xml, d'images locales, de pages de vue JSP
${basedir}/targetRépertoire de sortie de paquetage
${basedir}/target/classesRépertoire de sortie de compilation
${basedir}/target/test-classesRépertoire de sortie de compilation de test
Test.javaMaven ne lance automatiquement que les classes de test correspondant à cette règle de nommage.
~/.m2/repositoryEmplacement par défaut du répertoire de dépôt local de Maven

Caractéristiques de Maven

  • Les paramètres du projet suivent des règles unifiées.

  • Partagée dans tout projet.

  • La gestion des dépendances inclut la mise à jour automatique。

  • Une bibliothèque庞大且不断增长。

  • Extensible, capable de rédiger facilement des plugins en Java ou en langage de script.

  • Accès instantané aux nouvelles fonctionnalités avec très peu ou pas de configuration supplémentaire.

  • Construction basée sur le modèle − Maven peut construire un nombre illimité de projets dans des types de outputs prédéfinis, tels que JAR, WAR ou distribution basée sur les métadonnées du projet, sans avoir à exécuter des scripts dans la plupart des cas.

  • Site de cohérence des informations de projet − Utilisant les métadonnées du processus de construction, Maven peut générer un site ou un PDF, y compris tout document que vous souhaitez ajouter, et l'ajouter aux rapports standard sur l'état de développement du projet.

  • Gestion des publications et publication d'outputs individuels − Maven n'aura pas besoin de configuration supplémentaire pour s'intégrer avec des systèmes de gestion de code source (comme Subversion ou Git) et peut gérer les publications de projet basées sur un étiquette. Il peut également publier ses publications sur des emplacements de distribution pour d'autres projets. Maven peut publier des outputs individuels, tels que des JAR, contenant des archives d'autres dépendances et de documentation, ou publier en tant que code source.

  • Compatibilité à sens unique − Vous pouvez facilement migrer de multiples modules d'une ancienne version de Maven vers Maven 3 dans.

  • Lorsque les sous-projets utilisent les dépendances du projet parent, normalement, les sous-projets devraient hériter des dépendances du projet parent, sans utiliser de numéro de version,

  • Construction parallèle − La vitesse de compilation peut être généralement améliorée20 - 50 %.

  • Meilleurs rapports d'erreurs − Maven a amélioré les rapports d'erreurs, il vous fournit un lien vers la page wiki Maven, où vous pouvez cliquer pour voir la description complète de l'erreur.

    Apache Maven est un outil de gestion de projet et de compréhension de logiciels. Basé sur le concept du modèle d'objet de projet (POM), Maven peut gérer la construction, les rapports et la documentation des projets centralisés. En utilisant Maven, nous pouvons construire et gérer tout projet basé sur Java. Ce tutoriel vous expliquera comment utiliser Maven dans les activités quotidiennes de développement de projet en utilisant Java.