Maven
Le site de référence : http://maven.apache.org/
Maven repositories
http://repository.ow2.org/ ( OW2 / Sonatype Nexus )
Voir aussi :
http://javablabla.blogspot.fr/2013/08/eclipse-kepler-creer-un-projet-web.html
Comment créer rapidement un projet Maven sous Eclipse Kepler
New / Project... / Maven / Maven project
[Next >]
Sélectionner
[x] « Create a simple project »
[x] « Use default workspace location » (l’emplacement indiqué va changer par la suite)
[Next >]
Saisir le Group Id et l’ Artifact Id (qui vont être utilisés dans le pom.xml )
Exemple :
Group Id : « tp »
Artifact Id : « tp.jpa » (aussi utiliser comme le nom du projet qui va être créé dans le workspace)
[ Finish ]
Un nouveau projet est ajouté dans le workspace avec le nom de l'Artifact Id
Ce nom peut ensuite être changé ( par "Refactor" / "Rename" )
Le projet créé contient les répertoires standards de Maven et un fichier "pom.xml"
src/main/java
src/main/resources
src/test/java
src/test/resources
target
pom.xml
Pour compiler en Java 1.8 :
<build>
<plugins>
<plugin>
<artifactId>maven-compiler-plugin</artifactId>
<version>3.0</version>
<configuration>
<source>1.8</source>
<target>1.8</target>
</configuration>
</plugin>
</plugins>
</build>
Dépendences pour JUnit 4.11 :
<dependencies>
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>4.11</version>
<scope>test</scope>
</dependency>
</dependencies>
Dépendences pour Servlet 3.0 et JSP 2.1 :
<dependencies>
<dependency>
<groupId>javax.servlet</groupId>
<artifactId>javax.servlet-api</artifactId>
<version>3.0.1</version>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>javax.servlet.jsp</groupId>
<artifactId>javax.servlet.jsp-api</artifactId>
<version>2.2.1</version>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>jstl</groupId>
<artifactId>jstl</artifactId>
<version>1.2</version>
</dependency>
</dependencies>
puis " Run as .. / Maven install " pour récupérer les dépendances
et "Maven / Update project..." pour mettre à jour le projet Eclipse
NB : le header du "web.xml" doit être compatible avec la version de servlet/JSP du "pom.xml" :
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://java.sun.com/xml/ns/javaee"
xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd"
id="WebApp_ID" version="3.0">
Configuration d'un "Web Project" avec Maven :
- Ajouter "src/main/webapp"
Va contenir les ressources statiques et les JSP du projet.
Remplace le "WebContent" d'un projet web classique sous Eclipse
- Properties / Project Facets :
- Properties / Deployment Assembly :
Pour déployer les dépendances Maven dans WEB-INF/lib : 'Add' + 'Java Build Path Entries'
- Properties / Maven :
Ne pas cocher l'option 'Resolve dependencies from Workspace projects' :
Création du fichier "WEB-INF/web.xml" :
Le projet Maven ne contient pas de fichier "WEB-INF/web.xml"
Pour le créer :
Click-droit sur le projet : Java EE Tools / Generate Deployment Descriptor Stub
Un ficiher "web.xml" vide est ajouté dans le répertoire "src/main/webapp/WEB-INF"