Aller au contenu

Posts

2019

2016

Utiliser une propriété unique comme version Maven

·5 mins
Quand je travaille sur un projet Maven multi-modules (plusieurs dizaines) sur plusieurs branches en même temps, je me retrouve souvent avec des conflits à résoudre pour chaque merge sur les versions définies un peu partout dans les pom.xml… Et c’est tout sauf marrant. Tour d’horizon des solutions pour réduire le nombre de <version> déclarées dans tous ces pom.xml.

Migrer de boot2docker vers docker-machine

Ça fait un moment qu’à chaque utilisation de la commande boot2docker j’ai un joli message d’avertissement : WARNING: The 'boot2docker' command line interface (not to be confused with 'boot2docker' the operating system) is officially deprecated. Please switch to Docker Machine (https://docs.docker.com/machine/) ASAP. Docker Toolbox (https://docker.com/toolbox) is the recommended install method. Je me suis dit qu’il était temps de finalement faire la migration et de tester quelques goodies !

2015

Ecrire une migration Liquibase en Java

·2 mins
Liquibase est un outil très utile pour versionner sa base de données. La succession de refactoring à appliquer à une base peut-être décrite dans plusieurs formats de données (XML, YAML, JSON et SQL). Seulement il arrive qu’une migration soit “trop” complexe pour être décrite à partir des refactoring standards (ou alors tout simplement que l’on ne soit pas très à l’aise avec PL/SQL). Dans ce cas on peut écrire un changement particulier en Java.

2014

A la découverte de Java 8

·21 mins
Java 8 est maintenant disponible depuis plusieurs semaines, voici un “petit” résumé des fonctionalités de Java 8 que j’ai testé à travers tous les articles sur lesquels je suis tombé.

Le cycle de vie de son build Maven

·3 mins
Avec Maven, je me suis souvent retrouvé un peu seul devant un POM en me demandant ce que pouvait bien exécuter mon build sans devoir aller lister toutes les exécutions déclarées. Depuis Maven 3 il est possible de prévoir ce qu’un build va exécuter au sein de son cycle de vie. Etrangement il n’y a rien qui permet d’afficher facilement ce plan de build calculé. Voici le buildplan-maven-plugin.

2013

Git mergetool avec P4Merge sous MacOS

Quelque soit le gestionnaire de sources que l’on utilise, vient toujours le moment où des conflits apparaissent lors des merge. Dans ces cas là, chacun sa technique, personnellement, que ce soit pour l’affichage d’un diff ou un merge, je préfère les outils graphiques. J’ai longtemps utilisé les outils de tortoise sous Windows, mais à force de papillonner entre différents OS, j’ai cherché un outil disponible sur toutes les plateformes. Et je me suis finalement arrêté sur P4Merge…

JRebel, le redéploiement c'est à chaud !

·4 mins
Quand on développe des applications web Java EE, on passe généralement son temps à redéployer son application et redémarrer son conteneur… Heureusement on peut compter depuis un moment sur JRebel pour grandement augmenter sa productivité lors des développements en permettant le rechargement à chaud des modifications de façon plus poussé que le Hot Swap intégré à la JVM.

2012

Jenkins dans son IDE favoris

Se tenir informer de l’état de son (ses) build(s) est primordial dès lors que l’on utilise un environnement d’intégration continue. Quand on a de la chance on a un buildwall dans son espace de travail au milieu des développeurs… sinon c’est un peu du chacun pour sa peau. Ma solution préférée (différente des mails et autre moyen de notifications) consiste à monitorer Jenkins depuis son IDE.

Spring et les profils

·3 mins
Une des fonctionnalités apportées par la version 3.1 de Spring est la gestion des profils. Récemment, pour une application web, j’ai eu besoin de définir des comportements spécifiques dans mon environnement de développement pour ne pas interroger des services externes, inaccessible depuis mon poste. Le besoin est donc simple, charger des implémentations de service différentes selon l’environnement d’exécution de l’application. Et c’est là qu’entre en jeux les profils ! Ceux ci permettent de charger des beans différents dans le contexte Spring selon le(s) profil(s) configurés.

git-p4 au secours de Perforce

·4 mins
A la manière d’un git-svn, il est possible d’utiliser git pour se synchroniser avec un dépôt Perforce (ouf). On peut profiter de la souplesse de git en local et continuer de travailler avec ses collègues sur le dépot central Perforce.