Apache Maven par Johann AVELINE



Utilisation

Les Archetypes Maven

Un Archetype est un outil pour faire des templates de projet Maven. A l'aide de nombreux Archetypes déjà existants que propose Maven, il est possible de créer un projet prêt à compiler et déployer. Il est possible d'utiliser des Archetypes existants ou de créer ses propres Archetypes Maven.

Pour de plus amples informations concernant les Archetypes Maven disponibles, veuillez consulter le lien suivant : http://maven.apache.org/guides/introduction/introduction-to-archetypes.html



Utiliser un Archetype Maven

La commande à lancer pour créer un projet à partir d'un Archetype est presque toujours décrite avec l'Archetype. Néanmoins, la commande est la suivante :


				mvn archetype:create
					-DarchetypeGroupId=org.apache.tapestry
					-DarchetypeArtifactId=quickstart
					-DgroupId=org.example 
					-DartifactId=myapp
					-DpackageName=org.example.myapp
					-Dversion=1.0.0-SNAPSHOT

			


L'Archetype est un projet Maven identifié avec un groupId et artifactId comme les autres. Les paramètres à renseigner correspondent donc à la localisation du paquet de l'Archetype auxquels on ajoute les paramètres du projet que l'on va créer : son nom, les packages des sources et sa version. Cette commande va générer tout le nécessaire pour lancer un projet démo avec Tapestry.

Il existe un grand nombre d'Archetypes à disposition. La commande mvn archetype:generate permet de créer un projet à partir d'une liste d'Archetype disponible :


				$ mvn archetype:generate
				[INFO] ------------------------------------------------------------------------
				[INFO] Building Maven Default Project
				[INFO]    task-segment: [archetype:generate] (aggregator-style)
				[INFO] [archetype:generate]
				[INFO] Generating project in Interactive mode
				[INFO] No archetype defined. Using maven-archetype-quickstart
				Choose archetype:
				1: internal -> appfuse-basic-jsf 
				2: internal -> appfuse-basic-spring 
				3: internal -> appfuse-basic-struts
				4: internal -> appfuse-basic-tapestry
				5: internal -> appfuse-core
				6: internal -> appfuse-modular-jsf
				7: internal -> appfuse-modular-spring
				8: internal -> appfuse-modular-struts
				9: internal -> appfuse-modular-tapestry
				10: internal -> maven-archetype-j2ee-simple
				11: internal -> maven-archetype-marmalade-mojo
				12: internal -> maven-archetype-mojo
				13: internal -> maven-archetype-portlet
				14: internal -> maven-archetype-profiles
				15: internal -> maven-archetype-quickstart
				16: internal -> maven-archetype-site-simple
				17: internal -> maven-archetype-site
				18: internal -> maven-archetype-webapp
				19: internal -> jini-service-archetype
				20: internal -> softeu-archetype-seam
				21: internal -> softeu-archetype-seam-simple
				22: internal -> softeu-archetype-jsf
				23: internal -> jpa-maven-archetype
				24: internal -> spring-osgi-bundle-archetype
				25: internal -> confluence-plugin-archetype
				26: internal -> jira-plugin-archetype
				27: internal -> maven-archetype-har
				28: internal -> maven-archetype-sar
				29: internal -> wicket-archetype-quickstart
				30: internal -> scala-archetype-simple
				31: internal -> lift-archetype-blank
				32: internal -> lift-archetype-basic
				33: internal -> cocoon-22-archetype-block-plain
				34: internal -> cocoon-22-archetype-block
				35: internal -> cocoon-22-archetype-webapp
				36: internal -> myfaces-archetype-helloworld
				37: internal -> myfaces-archetype-helloworld-facelets
				38: internal -> myfaces-archetype-trinidad
				39: internal -> myfaces-archetype-jsfcomponents
				40: internal -> gmaven-archetype-basic
				41: internal -> gmaven-archetype-mojo
				Choose a number: 15 

			


Une fois qu'un Archetype a été sélectionné, il faut configurer les valeurs des paramètres suivants :


				Define value for groupId: : org.sonatype.mavenbook   
				Define value for artifactId: : quickstart
				Define value for version:  1.0-SNAPSHOT
				Define value for package:  org.sonatype.mavenbook
				Confirm properties configuration:
				groupId: org.sonatype.mavenbook
				artifactId: quickstart
				version: 1.0-SNAPSHOT
				package: org.sonatype.mavenbook
				Y: : Y

			


Puis le projet est généré dans le répertoire du nom de l'artifactId renseigné précédemment.


				[INFO] Parameter: groupId, Value: org.sonatype.mavenbook
				[INFO] Parameter: packageName, Value: org.sonatype.mavenbook
				[INFO] Parameter: basedir, Value: /Users/tobrien/tmp
				[INFO] Parameter: package, Value: org.sonatype.mavenbook
				[INFO] Parameter: version, Value: 1.0-SNAPSHOT
				[INFO] Parameter: artifactId, Value: quickstart
				[INFO] ********************* End of debug info from resources from \
				       generated POM **
				[INFO] OldArchetype created in dir: /Users/tobrien/tmp/quickstart
				[INFO] ------------------------------------------------------------------------
				[INFO] BUILD SUCCESSFUL
				[INFO] ------------------------------------------------------------------------
				[INFO] Total time: 1 minute 57 seconds
				[INFO] Finished at: Sun Oct 12 15:39:14 CDT 2008
				[INFO] Final Memory: 8M/15M
				[INFO] ------------------------------------------------------------------------


			




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

Valid XHTML 1.0!

Maven Logo