Différentes dépendances pour différents profils de construction
-
03-07-2019 - |
Question
Est-il possible d’avoir un ensemble de dépendances différent dans un fichier maven pom.xml pour différents profils?
par exemple
mvn -P debug
mvn -P release
Je voudrais choisir un fichier JAR de dépendance différent dans un profil comportant les mêmes noms de classe et différentes implémentations des mêmes interfaces.
La solution
Pour citer la documentation Maven à ce sujet :
Un élément de profil contient à la fois une activation facultative (un déclencheur de profil) et l'ensemble des modifications à apporter au POM si ce profil a été activé. Par exemple, un projet créé pour un environnement de test peut pointer vers une base de données différente de celle du déploiement final. Ou des dépendances peuvent être extraites de différents référentiels en fonction de la version de JDK utilisée .
(L'accent est pour moi)
Il suffit d'insérer la dépendance du profil release
dans la déclaration de profil elle-même et de faire de même pour debug
.
<profiles> <profile> <id>debug</id> … <dependencies> <dependency>…</dependency> </dependencies> … </profile> <profile> <id>release</id> … <dependencies> <dependency>…</dependency> </dependencies> … </profile> </profiles>
Autres conseils
Votre groupId, artifactId doit être marqué dans vos profils en tant que propriétés et vous pouvez déplacer vos dépendances vers la section générique.
Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow