Apache Maven par Johann AVELINE



Conventions

Dans Maven, tout est plugin !

Quand on télécharge Maven, il ne comprend que le moteur qui sert à télécharger des plugins. Tous les goals Maven sont dans des plugins même les plus indispensables comme le plugin compiler. Ainsi, il faut s'attendre à voir Maven télécharger énormément de plugins lors de la première exécution d'un goal. En rappelant le groupId et l'artifactId du plugin, on identifie de façon certaine le plugin. Il est alors possible de spécifier des paramètres génériques ou des paramètres spécifiques au plugin. Spécifier la version a son importance. Tous les plugins peuvent avoir des mises à jour et par défaut Maven vérifiera une fois par jour si une nouvelle version est disponible. Il arrive que les meilleurs plugins sortent des versions buggées, et sans fixer la version, le projet peut alors poser des problèmes à la compilation d'un jour à l'autre parce que la nouvelle version a été téléchargée automatiquement.

Maven confie chaque opération élémentaire de la construction du projet à un plugin, un fragment du logiciel qui se spécialise dans une tâche donnée. La compilation est un exemple de plugin, comme l'assemblage sous forme de JAR ou encore l'inclusion de fichiers de ressources, etc. Chaque plugin propose un certain nombre d'options et de paramètres qui permettent d'ajuster son fonctionnement, avec des valeurs par défaut qui sont choisies pour coller au mieux aux conventions de Maven et à une utilisation standard.

La modification des options par défaut d'un plugin s'effectue dans le fichier POM du projet, au sein de son bloc <build> :


			<build>
			 <plugins>
			   <plugin>
			     <groupId>org.apache.maven.plugins</groupId>
			     <artifactId>maven-compiler-plugin</artifactId>
			     <version>2.0.2</version>
			     <configuration>
			       <source>1.5</source>
			       <target>1.5</target>
			     </configuration>
			   </plugin>
			 </plugins>
			</build>
      
			

Chaque plugin peut ainsi être reconfiguré. Un plugin, comme tout artefact manipulé par Maven, est identifié par le triplet (identifiant de groupe, identifant d'artefact, version). Dans cet exemple nous indiquons le plugin dont nous désirons ajuster le fonctionnement. Le bloc <configuration> permet de lui passer des valeurs qui vont remplacer celles par défaut. Chaque plugin ayant son propre paramétrage, des documentations sont disponibles afin de connaître toutes les options possibles.



<< page précédente page suivante >>

Valid XHTML 1.0!

Maven Logo