| Ce site met a disposition le build journalier de la traduction francaise du Maven: The Definitive Guide Consultez : | ![]() |
Lorsque des assemblies sont produits durant le processus de
build normal du projet, les archives résultantes sont jointes à
l'artefact principal du projet. Cela signifie qu'elles seront installées
et déployées au côté de l'artefact et qu'elles seront donc accessibles
comme ce dernier. Chaque artefact assembly aura les mêmes
coordonnées de base que le projet principal (à savoir le
groupId, l'artifactId et la
version). Cependant ces artefacts sont des pièces
rapportées ce qui signifie pour Maven qu'il s'agit de produits secondaires au
build du projet principal. Par exemple, les assemblies source
contiennent les données d'entrée brutes du build du projet et les
assemblies jar-with-dependencies contiennent l'ensemble
des classes du projet et de ses dépendances. Les artefacts ainsi rattachés
peuvent ne pas respecter la règle Maven un projet un artefact de par leur
nature de produits secondaires.
Comme les assemblies sont (normalement) des artefacts rattachés, chacun
doit avoir son classifieur en plus des coordonnées de l'artefact principal pour
le distinguer de ce dernier. Par défaut ce classifieur est l'identifiant du
descripteur de l'assembly. Quand on utilise les descripteurs pré-définis
l'identifiant du descripteur d'assembly est le même que l'identifiant utilisé
dans la balise descriptorRef pour ce type d'assembly.
Maintenant que vous avez déployé l'assembly au côté de votre artefact
principal, comment pouvez-vous l'utiliser comme dépendance dans un autre
projet ? La réponse est simple. Rappelez-vous la discussion à propos des
dépendances entre projets avec Maven dans la
Section 3.5.3, « Les coordonnées Maven » et dans la Section 9.5.1, « Au sujet des coordonnées », les projets dépendent les uns des autres grâce à
quatre éléments de base que l'on appelle coordonnées d'un projet :
groupId, artifactId,
version et packaging. Dans la Section 11.5.3, « Classifieurs de plateforme », il existe de nombreuses
variantes de l'artefact du projet selon la plate-forme cible et le
projet spécifie un élément classifier qui prend la
valeur win ou linux de manière à
pouvoir choisir le bon artefact selon la plate-forme cible. Les artefacts
assembly peuvent être utilisés comme dépendance grâce aux coordonnées de
base du projet combinées au classifieur avec lequel l'assembly a été
installé ou déployé. Si l'assembly n'est pas une
archive JAR il faudra aussi déclarer son type.