110 likes | 192 Views
Gestionnaire de projets JAVA. Présenté par Sébastien PITOISET IR3 Jeudi 16 octobre 2003. Plan. Introduction Les projets Jakarta Présentation des concepts Utilisation Exemples pratiques Conclusion. Introduction. Raisons du choix. Projet Apache Jakarta. Origines du besoin.
E N D
Gestionnaire de projets JAVA Présenté par Sébastien PITOISET IR3 Jeudi 16 octobre 2003
Plan • Introduction • Les projets Jakarta • Présentation des concepts • Utilisation • Exemples pratiques • Conclusion
Introduction • Raisons du choix • Projet Apache Jakarta • Origines du besoin • Que permet-il ? • Compiler et déployer des applications (JAR, WAR) • Gérer les dépendances : librairies à jour • Effectuer les tests unitaires, formater les sources • Générer la documentation complète du projet
Les projets Jakarta • Projets professionnels de référence • Organisation de l’équipe : technocratie • initiateur = architecte • vote des nouveaux objectifs • Devenir contributeur • Organisation du travail : cvs, mailing lists…
Présentation des concepts • Les builds de projet aujourd’hui • Simplicité de Maven : POM • Structure du fichier project.xml • source directory • nom des développeurs, société • repository cvs : dépendances • repertoires de tests unitaires
Présentation des concepts • Comparatif avec Ant • Ant = make multi plate-forme • build.xml vs SourceDirectory • target et tâches non réutilisables • Compatibilité des deux • Système de plugins • Utilisation : #maven nom_plugin:goal
Utilisation • Exemples de plugins • jar, war • pdf, latex (documentation) • eclipse, jbulder • Personalisation et création de plugin • maven.xml : ajout d’extensions <PostGoal> et <PreGoal> • maven.xml : création de goals • Développement de plugins en jelly
Utilisation • Jelly • <?xml version="1.0" encoding="ISO-8859-1"?> • <project xmlns:j="jelly:core"> • <goal name="Echo Dependencies"> • <j:forEach var="dep” items="${pom.dependencies}"> • <echo>${pom.getDependencyPath(dep.getId())}</echo> • </j:forEach> • </goal> • </project>
Exemples pratiques • Installation • maven.apache.org • $MAVEN_HOME et $JAVA_HOME • Démo • # maven java:compile • # maven jar • # maven site:generate
Conclusion • Défauts • Projet récent : peu de docs • Lenteurs d’exécution • Améliorations futures • Développement de plugins en Java, Python… • Amélioration des performances • Support de projets écrits dans d’autres langages • Posez-vous les bonnes questions !
Références • http://maven.apache.org • Emmanuel Venisse : emmanuel@venisse.net • http://www-106.ibm.com/developerworks/java/library/j-maven/ • Livre en préparation