Maven3

Un article de Agora2ia.

Sommaire


Installation

Mac OS X

  • Télécharger l'archive depuis http://maven.apache.org/download.html
  • Décompresser par exemple dans : /usr/local/apache-maven-3.0.4
  • Crééer un lien symbolique par commodité :
    • cd /usr/local/
    • sudo ln -s apache-maven-3.0.4 maven
  • Puis compléter les PATH (pour ma part, j'ajoute les lignes suivantes dans mon fichier HOME/.bash_profile) :
    • export M3_HOME=/usr/local/maven
    • export PATH=${M3_HOME}/bin:${PATH}

Je peux alors ouvrir un terminal et taper mvn -v pour m'assurer que la version est bien 3.0.4


Problèmes

Multiple installations

Si vous aviez déjà une installation plus ancienne de Maven (v2 par exemple), vous aurez très probablement l'erreur suivante à la compilation de votre projet :

Exception in thread "main" java.lang.NoClassDefFoundError: org/codehaus/plexus/classworlds/launcher/Launcher
Caused by: java.lang.ClassNotFoundException: org.codehaus.plexus.classworlds.launcher.Launcher
  at java.net.URLClassLoader$1.run(URLClassLoader.java:202)
  at java.security.AccessController.doPrivileged(Native Method)
  at java.net.URLClassLoader.findClass(URLClassLoader.java:190)
  at java.lang.ClassLoader.loadClass(ClassLoader.java:307)
  at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:301)
  at java.lang.ClassLoader.loadClass(ClassLoader.java:248)
Could not find the main class: org.codehaus.plexus.classworlds.launcher.Launcher.  Program will exit.

Dans ce cas, il vous faut retirer de votre variable PATH l'accès à l'ancienne version de Maven. Par exemple, retirer la variable M2_HOME du PATH et relancer votre terminal.


Commandes les plus utiles

Créer un nouveau projet

mvn archetype:generate -DarchetypeGroupId=org.apache.maven.archetypes -DgroupId=me.couvreur.jacques.java.spikes.photome -DartifactId=photome-spike-reflect