Jar du plugin
Voyons voir ce que la commande suivante peut dire.
mvn help:describe -Dplugin=org.apache.maven.plugins:maven-jar-plugin
Il dispose de 3 buts, help
, jar
et test-jar
. Je crois que vous êtes surtout intéressé par l' jar
objectif, qui, selon la description n'est le suivant:
Construire un POT de l'actuel projet.
Comme une note de côté, à l'exécution d' mvn help:effective-pom
sur un projet avec d'emballage jeu d' jar
, montre que ce plugin est configuré automatiquement et est exécuté au cours de l' package
de phase.
<plugin>
<artifactId>maven-jar-plugin</artifactId>
<version>2.4</version>
<executions>
<execution>
<id>default-jar</id>
<phase>package</phase>
<goals>
<goal>jar</goal>
</goals>
</execution>
</executions>
</plugin>
Assemblée plugin
Ce on sert un but différent. Il dispose de 8 buts, mais 6 d'entre eux sont obsolètes. Donc, en dehors de l' help
de l'objectif, ce qui nous laisse avec l' single
de l'objectif.
mvn help:describe -Dplugin=org.apache.maven.plugins:maven-assembly-plugin
Assembler un bundle d'application ou de la distribution à partir d'un assemblage de descripteur. Cet objectif est adapté soit pour la liaison avec le cycle de vie ou en appelant directement à partir de la ligne de commande (à condition que tous les fichiers requis sont disponibles avant que la construction commence, ou sont produites par un autre but spécifié avant de celui-ci sur la ligne de commande).
Vous pouvez utiliser le montage plug-in lorsque vous voulez vous livrer plus que votre projet artefact (JAR, WAR, etc.), mais la configuration se passe dans un autre fichier.
L'ombre du plugin
La description de l'objectif principal qui est un peu décevant.
mvn help:describe -Dplugin=org.apache.maven.plugins:maven-shade-plugin
Mojo qui effectue l'ombrage de la délégation au Shader composant.
Vous voulons surtout l'utilisation de ce plugin si vous voulez produire un uber-pot, qui est votre artefact dans un BOCAL avec toutes ses dépendances transitives en elle.
Bref, si vous êtes la construction d'une bibliothèque, vous allez coller avec la valeur par défaut JAR du plugin. Si vous êtes à la construction d'une application, vous pouvez envisager d'utiliser l'ombre plugin, mais pour moi, c'est une sorte de rapide et sale. Si uber-pot n'est pas à votre goût ou la distribution ne peut pas s'adapter à l'intérieur d'un seul BOCAL (configuration externe, natif de dépendances, etc.) alors vous devriez aller pour l'assemblée plugin.