{"id":1041,"date":"2011-11-13T11:46:41","date_gmt":"2011-11-13T10:46:41","guid":{"rendered":"http:\/\/www.alpesjug.fr\/?p=1041"},"modified":"2011-11-13T11:46:41","modified_gmt":"2011-11-13T10:46:41","slug":"revue-du-livre-apache-maven-3-0-cookbook","status":"publish","type":"post","link":"https:\/\/www.alpesjug.fr\/?p=1041","title":{"rendered":"Revue du livre Apache Maven 3.0 CookBook"},"content":{"rendered":"<p><div id=\"attachment_1042\" style=\"width: 242px\" class=\"wp-caption alignright\"><a href=\"http:\/\/www.packtpub.com\/apache-maven-3-0-cookbook\/book\"><img loading=\"lazy\" decoding=\"async\" aria-describedby=\"caption-attachment-1042\" src=\"http:\/\/www.alpesjug.fr\/wp-content\/uploads\/2011\/11\/apache_maven_cookbook-232x300.png\" alt=\"Apache Maven 3 CookBook\" title=\"Apache Maven 3 CookBook\" width=\"232\" height=\"300\" class=\"size-medium wp-image-1042\" srcset=\"https:\/\/www.alpesjug.fr\/wp-content\/uploads\/2011\/11\/apache_maven_cookbook-232x300.png 232w, https:\/\/www.alpesjug.fr\/wp-content\/uploads\/2011\/11\/apache_maven_cookbook-116x150.png 116w, https:\/\/www.alpesjug.fr\/wp-content\/uploads\/2011\/11\/apache_maven_cookbook-400x515.png 400w, https:\/\/www.alpesjug.fr\/wp-content\/uploads\/2011\/11\/apache_maven_cookbook.png 611w\" sizes=\"auto, (max-width: 232px) 100vw, 232px\" \/><\/a><p id=\"caption-attachment-1042\" class=\"wp-caption-text\">Apache Maven 3 CookBook<\/p><\/div>Ce nouveau livre sur Apache Maven se veut un ensemble de recettes pour mettre en \u0153uvre Apache Maven 3 lorsque l&rsquo;on souhaite d\u00e9marrer un projet.<br \/>\nIl se compose de 9 chapitres :<\/p>\n<ol>\n<li><b>Une introduction aux concepts et \u00e0 l&rsquo;utilisation d&rsquo;Apache Maven 3<\/b>\n<p>Ce premier chapitre est une introduction &lsquo;classique&rsquo; \u00e0 la mise en place et la configuration d&rsquo;Apache Maven 3 sur un poste de d\u00e9veloppement.<\/p>\n<\/li>\n<li><b>Les techniques d\u2019ing\u00e9nierie logicielle<\/b>\n<p>Ce chapitre parle des bonnes pratiques de d\u00e9veloppement d&rsquo;un logiciel et de l&rsquo;utilisation de Maven dans un tel contexte. On y parle de TDD, de qualit\u00e9 de code et de gestion des d\u00e9pendances et comment Apache Maven facilite cette mise en \u0153uvre. On pourra regretter le choix de PMD pour la qualit\u00e9 logicielle plut\u00f4t que d\u2019un outil plus complet comme Sonar.<\/p>\n<\/li>\n<li><b>Les principes agiles de d\u00e9veloppement et de collaboration<\/b>\n<p>L&rsquo;auteur explique ici comment int\u00e9grer Apache Maven dans votre organisation avec un gestionnaire de d\u00e9p\u00f4ts, un serveur d&rsquo;int\u00e9gration continue, &#8230; Bref comment tirer un profit maximum des outils autour de Maven pour d\u00e9velopper vos logiciels.<\/li>\n<li><b>Rapports et documentation<\/b>Nous d\u00e9couvrons l&rsquo;usage des taches de reporting d&rsquo;Apache Maven pour produire un site statique, de la Javadoc et plusieurs autres rapports. On pourra regretter le fait que les <i>POM<\/i> montr\u00e9s utilisent la vieille forme de configuration d&rsquo;Apache Maven 2.x et non ce qui est sp\u00e9cifique \u00e0 Apache Maven 3.<\/p>\n<\/li>\n<li><b>D\u00e9veloppement Java avec Maven<\/b>\n<p>On voit ici comment produire un squelette pour chaque type de projet Java d&rsquo;entreprise :<\/p>\n<ul>\n<li> application Web et comment l&rsquo;ex\u00e9cuter avec Jetty<\/li>\n<li> pour J2EE : archetype<\/li>\n<li> pour Spring : on construit un vrai projet Spring<\/li>\n<li> pour Hibernate : utilisation du hibernate3-maven-plugin<\/li>\n<li> Seam avec Seam Forge : projet Maven de generation de code<\/li>\n<\/ul>\n<\/li>\n<li><b>D\u00e9veloppement Google avec Maven<\/b>\n<p>C&rsquo;est pour moi le chapitre le plus int\u00e9ressant car on y voit comment Apache Maven permet de d\u00e9velopper dans le monde des technologies Google : Android, GWT et GAE (Google App Engine).<br \/>\nAndroid : comment configurer son environnement pour d\u00e9velopper et d\u00e9ployer une application Android.<br \/>\nGWT : L\u00e0 encore comment configurer son poste pour cr\u00e9er et tester (que \u00e7a soit avec l&rsquo;outil de test int\u00e9grer ou Selenium) une application web GWT.<br \/>\nGAE : comment utiliser la plate forme de cloud de Google et les diff\u00e9rents arch\u00e9types disponibles pour construire vos applications.<\/p>\n<\/li>\n<li><b>Scala, Groovy et Flex<\/b>\n<p>Si pour Scala il existe l&rsquo;outil Simple Build Tool, celui-ci est destin\u00e9 aux projets Scala purs, si vous m\u00e9langez Scala et Java utilisez Maven et ses arch\u00e9types.<br \/>\nGroovy fournit un arch\u00e9type et un plugin <i>gmaven<\/i> qui permet aussi l&rsquo;ex\u00e9cution des scripts Groovy et l&rsquo;utilisation de la console et du shell Groovy.<br \/>\nEnfin pour le troisi\u00e8me langage, Flex, nous d\u00e9couvrons <i>flexmojo<\/i> qui permet de produire la structure d&rsquo;un projet Flex type ainsi que la documentation de ce plugin.<\/p>\n<\/li>\n<li><b>Int\u00e9gration dans un EDI<\/b>\n<p>Les EDI modernes (Netbeans, Elipse, Intellij IDEA) offrent une excellente int\u00e9gration d&rsquo;Apache Maven. Chaque EDI est pr\u00e9sent\u00e9 ainsi qu e sa mani\u00e8re d&rsquo;int\u00e9grer Apache Maven et d&rsquo;importer un projet Apache Maven dans l&rsquo;outil.<\/p>\n<\/li>\n<li><b>\u00c9tendre Apache Maven avec vos plugins<\/b>\n<p>Apache Maven est extensible au moyen de plugins. Nous voyons ici comment cr\u00e9er un plugin en Java mais aussi les autres mani\u00e8res d&rsquo;en faire en utilisant des scripts Apache Ant ou Ruby avec JRuby.<\/p>\n<\/li>\n<\/ol>\n<p>En conclusion ce livre apporte plusieurs d\u00e9tails importants, cependant s&rsquo;il permet une rapide mise en \u0153uvre d&rsquo;Apache Maven (et c&rsquo;est bien l\u00e0 son but affich\u00e9) un d\u00e9butant devrait s&rsquo;orienter vers un livre offrant une vision plus compl\u00e8te pour mieux en ma\u00eetriser les concepts avant d&rsquo;enrichir sa biblioth\u00e8que avec cet ouvrage.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Ce nouveau livre sur Apache Maven se veut un ensemble de recettes pour mettre en \u0153uvre Apache Maven 3 lorsque l&rsquo;on souhaite d\u00e9marrer un projet.<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[19],"tags":[368,30,16],"class_list":["post-1041","post","type-post","status-publish","format-standard","hentry","category-livre","tag-java","tag-livre-bibliotheque","tag-maven"],"_links":{"self":[{"href":"https:\/\/www.alpesjug.fr\/index.php?rest_route=\/wp\/v2\/posts\/1041","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.alpesjug.fr\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.alpesjug.fr\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.alpesjug.fr\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.alpesjug.fr\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=1041"}],"version-history":[{"count":2,"href":"https:\/\/www.alpesjug.fr\/index.php?rest_route=\/wp\/v2\/posts\/1041\/revisions"}],"predecessor-version":[{"id":1044,"href":"https:\/\/www.alpesjug.fr\/index.php?rest_route=\/wp\/v2\/posts\/1041\/revisions\/1044"}],"wp:attachment":[{"href":"https:\/\/www.alpesjug.fr\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=1041"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.alpesjug.fr\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=1041"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.alpesjug.fr\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=1041"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}