Archives de catégorie : Technologie

Le bug Maven du jour : MRESOURCES-104

Apache MavenIl parait que je dis toujours que du bien de Maven (c’est tout du moins ce que certains ressentent en écoutant le podcast Les Cast Codeurs). C’est pourtant, je pense, loin d’être la vérité et ceux qui peuvent assister aux différents Java Users Groups que j’ai pu présenter doivent pouvoir confirmer que je n’hésite pas aussi à casser du sucre dessus.
Certainement pour me punir voilà que je tombe ce soir sur un bug qui m’a fait perdre 30 minutes. Je ne compte pas rédiger un blog par jour pour décrire un bug Maven (même si il y aurait largement de quoi faire) mais en partageant l’information j’espère éviter à quelques autres ce soucis.
Continuer la lecture de Le bug Maven du jour : MRESOURCES-104

GD Star Rating
loading...
GD Star Rating
loading...

Build partiel avec Maven : Construire moins pour aller plus vite.

Apache MavenApache Maven permet nativement de découper un projet en sous-modules. Chaque module est un élément autonome avec son propre cycle de vie. Maven utilise ce que l’on appel le “reactor” pour orchestrer dans un projet l’appel des différents modules en fonction de leurs dépendances.

Le concept de module, permet d’affiner la granularité des livrables et de rendre plus flexible et évolutive l’architecture de l’application. Cependant lorsque le nombre de modules d’un projet augmente cela va souvent de pair avec le nombre de lignes de code, de tests et de packages à créer. La construction du projet prend donc de plus en plus de temps à en devenir un frein pour la productivité du développeur (moi je ne trouve rien de plus énervant lorsque je développe que de devoir attendre que ma machine me rende la main).

Entendu sur Les Cast CodeursIl existe pourtant des fonctionnalités du “reactor” qui permettent à Maven de contrôler finement quels sont les modules d’un projet sur lesquels on souhaite appeler un traitement. Même si elles existent depuis près de deux ans, ces fonctionnalités sont encore peu connues et utilisées malgré leurs utilités indéniables (faute à la documentation ?). Ce billet illustre mes rapides explications de l’épisode 20 du podcast Les Cast Codeurs. Il détaille l’utilisation de 4 options de la ligne de commande pour Maven 2.1 et versions ultérieures. Vous pouvez très bien faire la même chose avec le plugin reactor et les versions 2.0.x de Maven mais il faudra taper sur plus de touches de votre clavier car la syntaxe est bien moins synthétique.
Continuer la lecture de Build partiel avec Maven : Construire moins pour aller plus vite.

GD Star Rating
loading...
GD Star Rating
loading...

Subversion : Exclure en masse les fichiers et répertoires générés d’un projet Maven

Une chose ennuyeuse lorsque l’on démarre un nouveau projet Maven avec différents sous-modules et que l’on veut en gérer les versions dans Subversion c’est qu’il faut pour chaque module configurer la propriété svn:ignore afin de lui dire de ne jamais publier sur le serveur les fichiers ou répertoires que l’on ne veut pas partager avec le reste de l’équipe.
Le gros avantage de Maven ce sont ses conventions et en particulier sur l’organisation des répertoires (sans cela autant faire du script).
La force des OS Unix-like (Linux, Macos, …) c’est la panoplie d’outils super-puissants en ligne de commande.
Continuer la lecture de Subversion : Exclure en masse les fichiers et répertoires générés d’un projet Maven

GD Star Rating
loading...
GD Star Rating
loading...

Convertir en masse les notifications standard Hudson par celles du plugin Email-Ext

Chez eXo platform nous utilisons Hudson pour notre intégration continue.
La combinatoire entre les différents types de builds (intégration continue, reporting, packaging), les différents projets et leurs différentes branches de maintenance représente des dizaines de jobs dans Hudson.
Jusqu’à présent nous utilisions les notifications standards de Hudson pour recevoir les emails avec les statuts courant des jobs.
Il faut cependant avouer que celles-ci offrent très peu souplesse en ce qui concerne le contenu et les conditions de notification.
Continuer la lecture de Convertir en masse les notifications standard Hudson par celles du plugin Email-Ext

GD Star Rating
loading...
GD Star Rating
loading...

N’utilisez pas Hudson 1.344 !!

Je vous aurai prévenu 🙂
J’ai découvert un bug bloquant (http://issues.hudson-ci.org/browse/HUDSON-5536) qui corrompt les données locales. Ainsi même un retour en arrière sur la version d’Hudson ne vous corrige pas le problème. La correction manuelle à faire sur les fichiers Hudson est décrite dans l’issue Jira si par malchance vous avez déjà fait l’upgrade et que comme moi vous vous retrouvez avec tous vos builds KO.
L’équipe va probablement sortir une version 1.345 en urgence dans les heures à venir.
Merci à Andrew Bayer (@abayer sur twitter) pour son coup de main.

GD Star Rating
loading...
GD Star Rating
loading...