Pour citer le maven documentation on this:
Un élément profilé contient à la fois une activation facultative (un déclencheur de profil) et l'ensemble de modifications à apporter à la POM si ce profil a été activé. Par exemple, un projet construit pour un environnement de test peut pointer vers une base de données différente de celle du déploiement final.
Des dépendances peuvent être extraites de différents référentiels en fonction de la version JDK utilisée.
(L'accent est à moi)
Il suffit de mettre la dépendance pour le profil release
dans la déclaration de profil lui-même et faire la même chose pour debug
.
<profiles>
<profile>
<id>debug</id>
…
<dependencies>
<dependency>…</dependency>
</dependencies>
…
</profile>
<profile>
<id>release</id>
…
<dependencies>
<dependency>…</dependency>
</dependencies>
…
</profile>
</profiles>
Ceci peut être utilisé pour cibler différents serveurs Web. Par exemple, lors de la création d'un serveur JavaEE 5, qui propose des bibliothèques telles que JAXB, que vous ne devez pas inclure dans votre fichier war, par rapport à la construction d'un serveur JavaEE 1.4, où vous devez inclure le fichier JAXB jar. – Leonel