Ce site met a disposition le build journalier de la traduction francaise du Maven: The Definitive Guide
Consultez :
  • Les documents de reference sur le projet original
  • Les sources de la traduction fr sur GitHub
  • maven


    Partie I. Maven par l'exemple

    Le premier livre à traiter de Maven fut Maven: A Developer’s Notebook (O’Reilly). Ce livre introduisait Maven en plusieurs étapes via une conversation entre vous et un collègue qui savait déjà comment utiliser Maven. L'idée derrière la série des Developer’s Notebook (maintenant arrêtée) était que les développeurs apprennent mieux lorsqu'ils sont assis à côté d'autres développeurs et qu'ils passent par les mêmes schémas de pensée, apprenant à coder en réalisant et en expérimentant. Même si cette série fut un succès, le format Cahier avait des limitations. Les Cahiers du Développeur sont, par essence, des livres "avec un but précis" qui vous font passer par une série d'étapes pour atteindre des buts très spécifiques. Au contraire, les gros livres de reférence (les livres avec un animal chez O’Reilly) apportent un matériel de référence qui couvre un sujet dans son entier.

    Si vous lisez Maven: A Developer’s Notebook, vous apprendrez comment créer un projet simple ou un projet qui construit un WAR à partir de fichiers source. Mais si vous voulez comprendre les spécificités d'un point particulier comme le plugin Assembly, vous vous retrouverez dans une impasse. Comme il n'existe pas de matériel de référence correctement écrit sur Maven, vous devrez partir à la chasse dans la documentation des plugins sur le site de Maven ou fouiller les listes de diffusion. Une fois que vous vous êtes réellement plongé dans Maven, vous avez dû lire des milliers de pages HTML sur le site de Maven écrites par des centaines de développeurs différents, chacun avec sa propre idée de ce que doit contenir la documentation d'un plugin. Malgré les efforts de contributeurs de bonne volonté, lire la documentation des plugins sur le site de Maven est au mieux frustrant, et au pire, suffisamment décourageant pour abandonner Maven. Assez souvent, les utilisateurs de Maven restent bloqués car ils ne trouvent pas de réponse.

    Cette absence d'un manuel de référence (voire ultime) a bloqué Maven pendant quelques années, et a été un frein à son adoption. Avec Maven: The Definitive Guide, nous avons l'intention de changer tout ça en fournissant une référence complète dans la Partie II, « Maven - La Reference ». Dans la Partie I, nous avons conservé la progression narrative d'un Cahier du Développeur ; elle est intéressante car elle permet d'apprendre Maven par l'exemple. Dans cette partie nous "introduisons en faisant", et dans la Partie II, « Maven - La Reference », nous comblons les manques et nous nous plongeons dans les détails. Là où la Partie II, « Maven - La Reference » pourrait utiliser un tableau de référence et un listing de programme déconnecté d'un projet exemple, la Partie II est animée par de véritables exemples.

    Après avoir lu cette partie, vous devriez en savoir suffisamment pour commencer à utiliser Maven. Vous auriez besoin de vous référer à la Partie II, « Maven - La Reference » uniquement lorsque vous commencer à personnaliser Maven en écrivant vos propres plugins ou si vous voulez plus de détails sur un plugin particulier.

    Table des matières

    3. Mon premier projet avec Maven
    3.1. Introduction
    3.1.1. Télécharger l'exemple de ce chapitre
    3.2. Création du projet Simple
    3.3. Construire le projet Simple
    3.4. Modèle Objet du projet Simple
    3.5. Les concepts principaux
    3.5.1. Plugins Maven et Goals
    3.5.2. Cycle de vie de Maven
    3.5.3. Les coordonnées Maven
    3.5.4. Les dépôts Maven
    3.5.5. La gestion des dépendances de Maven
    3.5.6. Rapports et production du site
    3.6. En résumé
    4. Personnalisation d'un projet Maven
    4.1. Introduction
    4.1.1. Télécharger l'exemple de ce chapitre
    4.2. Présantation du projet Simple Weather
    4.2.1. Yahoo! Météo RSS
    4.3. Créer le Projet Simple Weather
    4.4. Personnaliser les informations du projet
    4.5. Ajout de nouvelles dépendances
    4.6. Code source de Simple Weather
    4.7. Ajouter des Ressources
    4.8. Exécuter le programme Simple Weather
    4.8.1. Le plugin Maven Exec
    4.8.2. Explorer les dépendances de votre projet
    4.9. Ecrire des tests unitaires
    4.10. Ajouter des dépendances dans le scope test
    4.11. Ajouter des ressources pour les tests unitaires
    4.12. Exécuter les test unitaires
    4.12.1. Ignorer les tests en échec
    4.12.2. Court-circuiter les tests unitaires
    4.13. Construire une application packagée et exécutable en ligne de commande
    4.13.1. Rattacher le goal Assembly à la phase Package
    5. Une simple application web
    5.1. Introduction
    5.1.1. Télécharger l'exemple de ce chapitre
    5.2. Définition de l'application web simple-webapp
    5.3. Création du projet web simple-web
    5.4. Configurer le plugin Jetty
    5.5. Ajouter une simple servlet
    5.6. Ajouter les dépendances J2EE
    5.7. Conclusion
    6. Un projet multimodule
    6.1. Introduction
    6.1.1. Télécharger l'exemple de ce chapitre
    6.2. Le projet parent
    6.3. Le module simple-weather
    6.4. Le module simple-web
    6.5. Construction du projet multimodule
    6.6. Exécution de l'application web
    7. Un projet multimodule d'entreprise
    7.1. Introduction
    7.1.1. Télécharger les sources de ce chapitre
    7.1.2. Projet multimodule d'entreprise
    7.1.3. Technologies utilisées dans cet exemple
    7.2. Le projet simple-parent
    7.3. Le module simple-model
    7.4. Le module simple-weather
    7.5. Le module simple-persist
    7.6. Le module simple-webapp
    7.7. Exécution de l'application web
    7.8. Le module de ligne de commande
    7.9. Exécution de l'application en ligne de commande
    7.10. Conclusion
    7.10.1. Programmation avec des projets API
    8. Optimiser et remanier les POMs
    8.1. Introduction
    8.2. Nettoyer le POM
    8.3. Optimiser les dépendances
    8.4. Optimiser les plugins
    8.5. Optimisation avec le plugin Maven Dependency
    8.6. Les POMs finaux
    8.7. Conclusion