Maîtrisez la notion de profil Maven. Générez dynamiquement les fichiers de propriétés en fonction d’un environnement cible (DEV, TEST, PROD). Comprenez la technique de filtrage de ressources
Ce tutoriel est un extrait de séances pratiques de la formation MAVEN dispensée par Objis.
Les + objis
70% de travaux pratiques
Clé USB avec tous les outils utilisés + Corrigés TPs
Bilan pédagogique individuel + conseils
Nos tutoriaux pour vous initier
Page officielle des plugins Maven
Guide développement de plugin Maven
Guide configuration de plugin Maven
Page officielle sur les Profils MAVEN
Tutoriel Maven N°1 : Installation Maven
Comprendre la gestion dépendances d’un projet multi-modules
Comprendre les déclaration de dépendances
+ de 100 tutoriaux java/jee Objis
Tutoriaux et formation MAVEN
Partie 1 : configuration filtrage de ressources
Partie 2 : création fichier settings.xml personnalisé
Partie 3 : déclaration des profils DEV, TEST, PROD
30min
Vous souhaitez générez dynamiquement les fichiers de propriétés (ex : db.properties) d’une application en fonction d’un profil cible (ex : db dév, db test, db prod).
Créez une section (balise) ’build’ dans le pom.xml du module dao
Créez section ’resources’ dans la section ’build’ crée ci-dessus
Créez un répertoire ’resources’ dans le module dao :
— mkdir src/main/resources
Ajoutez les éléments suivants dans pom.xml du module d’accès aux données (monappli-dao).

Ici nous avons activé le filtrage des ressources, qui permet par exemple de générer dynamiquement le contenu du fichier de propriété src/main/resources/db.properties , correspondant aux informations de connexion à la base de données.
Créez dans le répertoire resources un fichier db.properties ayant le contenu suivant :

Suivant l’environnement cible choisi pour la base de données (dev , test, prod), le fichier sera modifié dans target/classes/db.properties de façon à correspondre à des informations réelles de l’environnement cible. :
Cela dépend de la section
Copier / Coller le fichier M2_HOME/conf/settings.xml dans USER_HOME/.m2
Cela permet d’avoir une configuration spécifique à l’utilisateur, dans laquelle il pourra mettre des informations sensibles type login/pwd pour serveurs applicatifs ou serveurs de déploiement livraisons.
Supprimez le contenu interne à la balise principale

Bases de données de développement et de test
Ci-dessous 2 profils sont configurés (id=dev et id=test), chacun avec une base de données particulière.

Profil par défaut
En utilisant la documentation MAVEN, expliquez le role des balises activeProfiles / activeProfile
Configurez votre settings.xml afin que ce soit la base de données de développement qui soit choisie par défaut lors d’un mvn compile.
Validez que le fichier target\classes\db.properties a le contenu suivant :
— db.driver=com.mysql.jdbc.Driver
— db.url= jdbc:mysql ://localhost/dbdev
— db.username= root
— db.password=
Activation de la base de test
Pour utiliser la base de données du profile id=test, lancer mvn install -Ptest QUESTION : Quel impact sur le fichier db.properties ?
Pour lancer l’option debug de Maven (-X) : lancer mvn install -Ptest -X
INFO : il est possible de définir des profiles dans pom.xml ou dans settings.xml.
Pour connaître les differents profils présents, lancez mvn help:active-profiles
Dans ce tutoriel, vous avez mis en oeuvre la notion de profil maven et la technique de filtrage de ressources.
Le chemin le plus court pour avoir les réflexes et la méthodologie du bon développeur et chef de projet MAVEN :
Si vous appréciez notre sens du partage, devenez gratuitement membre ’classic’ du Club Objis :
Votez pour les prochains tutoriaux à publier
Préparez vos entretiens techniques
Valorisez votre profil / expertise
Identifiez des opportunités d’emploi
Recevez la newsletter objis.com