| Ce site met a disposition le build journalier de la traduction francaise du Maven: The Definitive Guide Consultez : | ![]() |
Pour créer votre projet d'application web, exécutez la commande mvn archetype:generate
en précisant un artifactId et un groupId. Paramétrez
l'archetypeArtifactId à
maven-archetype-webapp. L'exécution de cette commande va
créer la structure des répertoires appropriée et le POM
Maven :
$ mvn archetype:generate -DgroupId=org.sonatype.mavenbook.simpleweb \ -DartifactId=simple-webapp \ -DpackageName=org.sonatype.mavenbook \ -Dversion=1.0-SNAPSHOT ... [INFO] [archetype:generate {execution: default-cli}] Choose archetype: ... 15: internal -> maven-archetype-quickstart () 16: internal -> maven-archetype-site-simple (A simple site generation project) 17: internal -> maven-archetype-site (A more complex site project) 18: internal -> maven-archetype-webapp (A simple Java web application) ... Choose a number: (...) 15: : 18 Confirm properties configuration: groupId: org.sonatype.mavenbook.simpleweb artifactId: simple-webapp version: 1.0-SNAPSHOT package: org.sonatype.mavenbook.simpleweb Y: : Y [INFO] Parameter: groupId, Value: org.sonatype.mavenbook.simpleweb [INFO] Parameter: packageName, Value: org.sonatype.mavenbook.simpleweb [INFO] Parameter: package, Value: org.sonatype.mavenbook.simpleweb [INFO] Parameter: artifactId, Value: simple-webapp [INFO] Parameter: basedir, Value: /private/tmp [INFO] Parameter: version, Value: 1.0-SNAPSHOT ... [INFO] BUILD SUCCESSFUL
Une fois que le plugin Maven Archetype a généré le projet, ouvrez le
répertoire simple-web et
regardez le fichier pom.xml. Vous devriez
voir le document XML présenté dans l'exemple
suivant :
Exemple 5.1. POM initial du projet simple-web
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd"> <modelVersion>4.0.0</modelVersion> <groupId>org.sonatype.mavenbook.simpleweb</groupId> <artifactId>simple-webapp</artifactId> <packaging>war</packaging> <version>1.0-SNAPSHOT</version> <name>simple-webapp Maven Webapp</name> <url>http://maven.apache.org</url> <dependencies> <dependency> <groupId>junit</groupId> <artifactId>junit</artifactId> <version>3.8.1</version> <scope>test</scope> </dependency> </dependencies> <build> <finalName>simple-webapp</finalName> </build> </project>
Ensuite, vous allez devoir configurer le plugin Maven Compiler pour
utiliser Java 5. Pour cela, ajoutez l'élément plugins
au POM initial comme décrit dans l'Exemple 5.2, « POM du projet simple-web avec la configuration
du compilateur ».
Exemple 5.2. POM du projet simple-web avec la configuration du compilateur
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd"> <modelVersion>4.0.0</modelVersion> <groupId>org.sonatype.mavenbook.simpleweb</groupId> <artifactId>simple-webapp</artifactId> <packaging>war</packaging> <version>1.0-SNAPSHOT</version> <name>simple-webapp Maven Webapp</name> <url>http://maven.apache.org</url> <dependencies> <dependency> <groupId>junit</groupId> <artifactId>junit</artifactId> <version>3.8.1</version> <scope>test</scope> </dependency> </dependencies> <build> <finalName>simple-webapp</finalName> <plugins> <plugin> <artifactId>maven-compiler-plugin</artifactId> <configuration> <source>1.5</source> <target>1.5</target> </configuration> </plugin> </plugins> </build> </project>
Notez que l'élément packaging contient la valeur
war. Ce type de packaging permet de configurer Maven
pour produire une archive WAR. Un projet avec
le packaging war va produire un fichier
WAR dans le répertoire target/. Le
nom par défaut de ce fichier est
${artifactId}-${version}.war. Dans ce projet, le
WAR par défaut serait donc
target/simple-webapp-1.0-SNAPSHOT.war. Dans le projet
simple-webapp, nous avons personnalisé le nom du
fichier WAR généré en ajoutant l'élément
finalName dans la configuration du build. En précisant
simple-webapp comme valeur de
finalName, la phase package produit
le fichier WAR
target/simple-webapp.war.