Maven

1 938 vues

Publié le

Publié dans : Technologie
0 commentaire
0 j’aime
Statistiques
Remarques
  • Soyez le premier à commenter

  • Soyez le premier à aimer ceci

Aucun téléchargement
Vues
Nombre de vues
1 938
Sur SlideShare
0
Issues des intégrations
0
Intégrations
205
Actions
Partages
0
Téléchargements
24
Commentaires
0
J’aime
0
Intégrations 0
Aucune incorporation

Aucune remarque pour cette diapositive

Maven

  1. 1. MavenMise en bouche<br />
  2. 2. La philosophie Maven<br />Extensibilité<br />Réutilisabilité<br />Standardisation du cycle de vie<br />=> Faciliter le multi projet avec multi équipes<br />
  3. 3. Maven vu par<br />Le pessimiste :<br />Un Outil pour les compiler tous, Un Outil pour les tester,Un Outil pour les assembler tous et dans les artefact les lier<br />L’optimiste :<br />Le couteau suisse du Build<br />
  4. 4. vs<br />Round 1 : Revue des arguments anti maven<br />
  5. 5. Ant est plus flexible <br />Mavenest flexible mais propose des conventions par défauts et des points d’extensions quand c’est nécessaire<br />
  6. 6. Avec Ant je fais des choses que Maven ne peut pas faire<br />Mais est-ce vraiment nécessaire ?<br />
  7. 7. Tout les projets ne sont pas pareils <br />Oui mais il existe un cadre commun à tout les projets, allant de la gestion des versions aux tests en passant par le déploiement<br />Maven gère jar, war, ear, jnlp, zip, pom etc… (Pour les .trucmuche, à vous de l’implémenter)<br />
  8. 8. j'ai déjà développé 70 scripts Ant qui marchent, pourquoi changer ?<br />Et vous voulez les maintenir toute votre vie ? <br />
  9. 9. Je ne maitrise plus mes dépendances<br />« Sans maitrise la puissance n’est rien »<br />Bonnes pratiques à respecter :<br />Fixer les versions des plugins<br />Utiliser le DependencyManagement<br />Utiliser le PluginManagement<br />Avoir son propre repository (Nexus)<br />
  10. 10. vs<br />Round 2 : Peut-on vraiment les comparer ?<br />
  11. 11. Objectifs <br />Ant = boite à outils<br />Maven = boite à patterns<br />Ant != Maven<br />
  12. 12. vs<br />Match nul : Ca n’adresse pas les mêmes problèmes<br />(Et hop, voila comment éviter la polémique)<br />
  13. 13. Ok alors pourquoi maven ?<br />
  14. 14. Maven : les plus<br />une arborescence standard, le SDL <br />une gestion des dépendances entre projet<br />une gestion des versions<br />une gestion du reporting<br />un cycle de vie standardisé<br />des plugins…<br />
  15. 15. Maven : le SDL<br />Facilite l’arrivée sur un nouveau projet<br />Propose des conventions <br />Séparation test et source<br />Filtrage des fichiers de configuration<br />Fichiers source générés dans target<br />Etc…<br />Facilite l’intégration de plugins<br />
  16. 16. Maven : la gestion des dépendances<br />Des scopes de compilation<br />compile<br />provided<br />runtime<br />test<br />Des dépendances transitives<br />
  17. 17. Maven : la gestion des versions<br />Une convention de nommage<br />1.0.0 (version stable)<br />1.0.0-SNAPSHOT (version de dev)<br />1.0.0-RC1 (version candidate à la release)<br />Des versions automatique avec mvnrelease<br />
  18. 18. Maven : la gestion du reporting<br />Tests unitaires, couverture de code<br />Code review automatique avec CheckStyle et PMD<br />Rapport de dépendances<br />Javadoc<br />Etc…<br />
  19. 19. Maven : Un cycle de vie<br />
  20. 20. Maven : Des plugins<br />Signer un jar<br />Construire un bundle OSGI<br />Générer des beans via une XSD<br />Générer un client WS<br />Il y a un plugin pour cela<br />
  21. 21. What'snext<br />Diapo supprimée, il s’agissait du plan d’action pour la mise en place chez mon client actuel<br />

×