
Ce livre est écrit par Nicolas de Loof (Cloubees) et Arnaud Héritier (eXo Platform), avec de nombreuses participations de la communauté francophone.
Pour rappel Arnaud Ă©tait venu nous prĂ©senter Maven 3 lors de la session du 16 Mars 2011. J’espĂšre que l’on verra Nicolas bientĂŽt sur Toulouse, par exemple pour nous prĂ©senter Cloudbees ?
Ce livre prĂ©sente l’ensemble des concepts de Maven 2 et 3. Il fait le tour des possibilitĂ©s de cet outil via un cas concret que l’on suit de bout en bout en utilisant les plugins principaux.
Ce livre ne fait pas une revue détaillée de tous les plugins de Maven, ni de leurs options.
RevueBien que je frĂ©quente depuis longtemps Maven je n’ai jamais eu l’occasion d’approfondir le sujet. J’attendais donc de complĂ©ter mes connaissances et d’apprendre les bonnes pratiques de Maven.
Contrairement aux livres informatiques que je lis traditionnellement ce livre utilise une approche récréative en faisant intervenir de nombreux acteurs de la communauté de Maven. Ceci rend la lecture plus agréable.
En partant d’un cas concret, il met en Ă©vidence la puissance de Maven en expliquant et dĂ©montrant les bonnes pratiques, j’avais dĂ©jĂ rencontrĂ© beaucoup de ces situations, l’apprentissage en est donc bien meilleur.
Cet ouvrage a globalement a comblé mes attentes sur Maven. Il me parait important de mettre en pratique les notions abordées sur un projet concret en parallÚle de la lecture.
J’ai trouvĂ© particuliĂšrement intĂ©ressant les chapitres qui prennent du recul, en particulier le chapitre 15 qui dresse qui bilan, ainsi que le chapitre 16 qui essai de voir plus loin (OSGi, Modules Java)
Un problĂšme courant lorsqu’on parle des outils comme Maven, ANT, Gradle, … et qu’il est difficile d’isoler l’outil par rapport aux autres outils de la forge logiciel (SCM, IntĂ©gration Continue, ProcĂšs de livraison, …). Dans ce livre on retrouve une prĂ©sentation rapide de l’intĂ©gration continue (Continuum, Hudson et Jenkins) et des outils de qualitĂ© (PMD, Findbugs, Sonar).
De mon point de vu, les outils d’intĂ©gration continue prennent le pas sur Maven pour ce qui concerne le contrĂŽle qualitĂ© voir du processus de livraison (Continuous Delivery). Cela aurait Ă©tĂ© peut ĂȘtre hors sujet, mais j’aurai prĂ©fĂ©rer un chapitre complet sur Jenkins mettant en oeuvre tout ceci.
Du cotĂ© test JavaEE, j’aurai aimer avoir plus de dĂ©tail sur Arquillian qui aujourd’hui me semble ĂȘtre la meilleur solution de test dans ce contexte.
Dans le chapitre 14: « Un nouveau projet dĂ©marre », il manque peut ĂȘtre une petite note sur les outils comme Springs Roo ou JBoss Forge, et d’expliquer le positionnement des archĂ©types Maven vis Ă vis de ces outils.
ConclusionLes plus
Les moins
De mon point de vue s’il faut lire un seul bouquin sur Maven, c’est celui la.
Igor.
Découvrez JavaFX 2
Le 16/02 Ă l’Epitech, Ă 18h30, SĂ©bastien Bordes animera une soirĂ©e JavaFX2.
SĂ©bastien nous a allĂ©chĂ© en proposant de faire sa prĂ©sentation 100% avec JavaFX2. Dans le style « Eat your own food », la soirĂ©e donnera donc lieu Ă une prĂ©sentation et dĂ©monstration de la techno
Plus de dĂ©tails sur la soirĂ©e, et le formulaire d’inscription sur le site JugEvents.
Venez nombreux et parlez-en autour de vous!
Gaël pour le Toulouse JUG.
Ce retour fait suite au gain dâune licence JRebel lors de la soirĂ©e du Toulouse JUG autour du Framework Play.
PrĂ©sentation rapideJRebel est un outil proposĂ© par la sociĂ©tĂ© ZeroTurnaround Ă destination des dĂ©veloppeurs ayant pour but dâamĂ©liorer leur productivitĂ©. Pour cela, il fournit un systĂšme de prises en compte Ă chaud des modifications sans nĂ©cessiter le redĂ©ploiement de lâapplication ou le redĂ©marrage du serveur.
Il se prĂ©sente sous la forme dâun plugin « java agent » Ă dĂ©clarer au niveau de la JVM du serveur dâapplication et dâun fichier de configuration « rebel.xml » Ă placer Ă la racine du rĂ©pertoire contenant les fichiers « .class » pour chaque application et module du projet. A lâexĂ©cution, cet agent surveille les classpath indiquĂ©s dans le fichier « rebel.xml » puis agit sur le Class Loader en chargeant les nouvelles versions des classes (dâaprĂšs ce que jâai pu comprendre, il sâagit dâun monitoring des classpath en se basant sur les timestamp des fichiers .class pour dĂ©tecter les modifications).
Pour plus de dĂ©tails, la documentation et les forums permettent une prise en main rapide pour les cas dâutilisation standards.
Prise en MainPour prendre en main lâoutil, jâai effectuĂ© les premiers tests sur un projet personnel basĂ© sur Spring MVC avec utilisation de Spring Web Flow, le tout sâexĂ©cutant dans le conteneur Tomcat.
Pour les technologies Spring, ZeroTurnaround fournit de nombreux exemples (documentation, FAQ, screencast). La mise en place de JRebel a donc été rapide. Pour les quelques problÚmes survenus au démarrage, une recherche sur les forums permet de rapidement cerner les erreurs de paramétrage.
Pour les personnes ayant assistĂ© aux soirĂ©es sur Play ou Grails, les prĂ©sentateurs ont mis en avant la prise en compte des modifications sans redĂ©marrage du serveur parmi les avantages par rapport aux autres frameworks JEE dits « standards ». Avec JRebel, un projet Spring « classique » profite dâun fonctionnement trĂšs proche.
Lâapport de JRebel est un plus indĂ©niable pour le dĂ©veloppement. Il permet dâamĂ©liorer la productivitĂ© du dĂ©veloppeur aussi bien dans la phase de crĂ©ation que leur de la validation ou du support dâune application. MalgrĂ© quelques ratĂ©s ayant nĂ©cessitĂ© de redĂ©marrer Tomcat, ce premier test mâa convaincu de pousser lâexpĂ©rimentation en condition rĂ©elle sur un projet professionnel.
Utilisation en condition rĂ©elleAfin de faire un retour plus pertinent, jâai configurĂ© JRebel sur mon environnement de dĂ©veloppement professionnel. Point important, la sociĂ©tĂ© pour laquelle je travaille utilise un framework interne, donc non listĂ© comme pris en charge par JRebel.
Alors que la mise en place fut plutĂŽt rapide pour le projet Spring, la tĂąche a Ă©tĂ© beaucoup plus compliquĂ©e sur ce second environnement. AprĂšs plusieurs Ă©checs, jâai fini par trouver un paramĂ©trage assurant la prise en compte des modifications pour les projets web principaux, les modules externes Ă©tant plus ou moins bien pris en charge.
AprĂšs environ trois semaines dâutilisation en condition rĂ©elle, JRebel affiche une estimation de 3 heures Ă©conomisĂ©es (pour 14 jours de dĂ©veloppement). Toutefois, malgrĂ© la prise en compte des modifications, notre framework interne nĂ©cessite un redĂ©ploiement de lâapplication web dans la plupart des cas.
La problĂ©matique rencontrĂ©e nâest pas Ă mettre sur le compte de JRebel mais sur le fonctionnement particulier de notre framework. Pour que certaines modifications soient prises en compte, la chaĂźne de dĂ©marrage de lâapplication web est impĂ©rative. Pour utiliser JRebel de maniĂšre optimale avec ce framework, le dĂ©veloppement dâun plugin JRebel prenant en compte ses particularitĂ©s semble inĂ©vitable et met fin Ă mes tests.
ConclusionLes Plus :
Les Moins :
Jonathan Pineau
Votre avis nous intéresse, et Léonardo vous a concocté un petit cocktail de sujets bien chaud. A vous de choisir quels sujets seront de préférence présentés en cette année 2012.
Alors, plutĂŽt Kotlin ou LucĂšne ?

DĂ©couvrez Grails et l’un des projets les plus importants dĂ©veloppĂ© en France avec Grails!
Le 19/01 Ă l’Epitech, Ă 18h30, Vincent Barrier et Franck Silvestre animeront une soirĂ©e Grails.
Ces deux toulousains, grands utilisateurs de Grails, nous prĂ©senteront une introduction Ă Grails, ainsi que l’utilisation de Grails pour dĂ©velopper l’ENT des LycĂ©es de la RĂ©gion Ăle de France: Lilie.
Plus de dĂ©tails sur la soirĂ©e, et le formulaire d’inscription sur le site JugEvents.
Venez nombreux et parlez-en autour de vous!
Gaël pour le Toulouse JUG.