Mon blog
Maven - Mémo
Created 11/03/2009 12:34
Création d'un projet
mvn archetype:generate -DgroupId=com.afp.cybertest -DartifactId=cybertest
Puis choisir le numéro décrivant le mieux l'application que vous voulez générer (15 : application classique ; ...)
Créer un projet web (si vous n'avez pas utilisé la nouvelle option : generate)
mvn archetype:create -DgroupId=[your project's group id] -DartifactId=[your project's artifact id] -DarchetypeArtifactId=maven-archetype-webapp
creation directory manquante
mkdir -p ./src/main/java/<groupid>/<artifactid>
mkdir -p ./src/test/java/<groupid>/<artifactid>
creation jar full (ie avec dependances)
sous /project/build/plugins
<plugin>
<artifactId>maven-assembly-plugin</artifactId>
<configuration>
<!-- fabrication jar executable -->
<archive>
<manifest>
<mainClass>com.afp....</mainClass>
</manifest>
</archive>
<descriptorRefs>
<descriptorRef>jar-with-dependencies</descriptorRef>
</descriptorRefs>
</configuration>
<executions>
<execution>
<id>make-assembly</id>
<phase>package</phase>
<goals>
<goal>attached</goal>
</goals>
</execution>
</executions>
</plugin>
Préciser la version de java
<!-- type de compilo -->
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<configuration>
<source>1.6</source>
<target>1.6</target>
</configuration>
</plugin>
gestion des dependances
Afficher le graph des dependances
mvn dependency:tree
Supprimer une dépendance (calculée par transitivité)
<dependency>
<groupId>org.apache.axis2</groupId>
<artifactId>axis2-jaxws</artifactId>
<version>1.4.1</version>
<exclusions>
<exclusion>
<groupId>javax.servlet</groupId>
<artifactId>servlet-api</artifactId>
</exclusion>
</exclusions>
</dependency>
Dans cet exemple l'artifact axis2-jaxws dépend de servlet-api ; dépendance que l'on annulle.
installation a la main dans le repesitory
mvn install:install-file -Dfile=jsp-api.jar -DgroupId=tomcat.jsp -DartifactId=jsp -Dversion=1.0 -Dpackaging=jar -DgeneratePom=true mvn install:install-file -Dfile=jsp-api.jar -DgroupId=tomcat.jsp -DartifactId=jsp-api -Dversion=6.0 -Dpackaging=jar -DgeneratePom=true
Utiliser un cache (si vous disposez d'un proxy)
Rajoutez ces lignes dans votre fichier 'settings.xml' :
<servers>
<server>
<id>central</id>
<configuration>
<useCache>true</useCache>
</server
</servers>
Déclare que pour le repository central (le défaut) vous souhaitez utiliser les fonctionnalités de caching (sinon par defaut maven rajoute des entêtes http demandant de désactiver les fonctionnalités de caching).