2010-10-29 8 views
3

Je suis très nouveau à Maven et aimerais voir un exemple de la façon dont on utilise le plugin maven jar. J'ai déjà visité here mais je n'ai trouvé aucun exemple. Sur la page de documentation, il y avait quelques paramètres listés pour cet objectif mais ce que je cherchais, c'est comment on les place dans la balise 'goal' ou 'executions'. Merci.existe-t-il des exemples d'utilisation de maven-jar-plugin?

+0

Ce ne sont pas des exemples, c'est pourquoi ce n'est pas une 'réponse', mais avez-vous regardé: http://maven.apache.org/plugins/maven-jar-plugin/? – Jonathan

Répondre

5

Vous n'utilisez généralement pas le plugin jar. Si vous définissez l'empaquetage sur jar, l'objet jar: jar est automatiquement exécuté.

Si vous souhaitez configurer le plug-in pot, faire comme ceci:

<plugin> 
    <groupId>org.apache.maven.plugins</groupId> 
    <artifactId>maven-jar-plugin</artifactId> 
    <version>2.3.1</version> 
    <configuration> 
     <excludes> 
      <exclude>**/*.xml</exclude> 
     </excludes> 
    </configuration> 
</plugin> 

(Exemple: exclure tous les fichiers xml de la jarre)

Il n'y a pas besoin d'ajouter un but ou de l'exécution blocks, un bloc de configuration global est valide pour toutes les exécutions.

Référence:

+0

+1 pour la concision. –

+0

Merci pour vos réponses les gars. – John

5

Je suis très nouveau à Maven et je voudrais voir un exemple de la façon dont on utilise le plug-in jar Maven. J'ai déjà visité ici mais je n'ai trouvé aucun exemple.

Tous les plugins maven ont généralement une page Usage, tout comme le Maven JAR Plugin. Mais comme indiqué par seanizer, il est inhabituel d'appeler le plugin Maven JAR directement, vous ne l'utilisez pas vraiment directement, comme le fait Maven.

Maven est livré avec un build lifecycle en phases (par exemple compile, test, package, etc.) et default Lifecycle Bindings (plugins objectifs liés aux phases) qui dépendent de l'emballage de votre projet. Et en tant qu'utilisateur, vous appelez un phase (par exemple, package) et Maven utilise ensuite des objectifs de plugin spécifiques pour effectuer le travail.

Par exemple, pour un projet avec un packaging de type jar, l'objectif lié à package est jar:jar et Maven emballons votre projet JAR. Pour un projet avec un packaging de type war, war:war est lié à package et Maven produirait un WAR pendant package. Etc.

L'avantage de cette approche est que quel que soit le type de projet (jar, war, ear, etc.), vous n'avez pas besoin de connaître les détails pour le construire. Vous avez juste besoin de savoir « connu » phases: compile établira un projet, test va compiler et exécuter les tests, package va emballer, etc.

Sur la page de la documentation, il y avait des paramètres indiqués pour cet objectif, mais ce que je cherchais, c'est comment on les place dans le tag 'goal' ou 'executions'.

Le Guide to Configuring Plug-ins explique les règles pour configurer un plugin Maven, qui se fait en spécifiant un élément <configuration>. Ce <configuration> peut être générique (global) ou spécifique à un <execution> pour les objectifs qui participent à une phase particulière du build lifecycle. Et une fois que vous savez comment configurer l'un d'entre eux, vous pouvez en configurer un (seuls les paramètres sont spécifiques à chaque plugin).

Dans le cas particulier du plugin Maven JAR, un <configuration> global devrait suffire, il est peu probable que vous ayez besoin d'un <execution> spécial (en plus de celui par défaut).

+0

Merci Pascal, pour expliquer les hauts niveaux de fonctionnement de Maven. – John