Je voudrais avoir un objective Maven pour déclencher l’exécution d’une classe Java. J’essaie de migrer sur un Makefile
avec les lignes:
neotest: mvn exec:java -Dexec.mainClass="org.dhappy.test.NeoTraverse"
Et je voudrais que mvn neotest
produise ce que make neotest
actuellement.
Ni la documentation du plug-in exec ni les pages de tâches Ant de Maven ne comportaient un exemple simple.
Actuellement, je suis à:
org.codehaus.mojo exec-maven-plugin 1.1 java org.dhappy.test.NeoTraverse
Je ne sais pas comment déclencher le plug-in à partir de la ligne de commande.
Avec la configuration globale que vous avez définie pour le plugin exec-maven:
org.codehaus.mojo exec-maven-plugin 1.4 org.dhappy.test.NeoTraverse
invoquer mvn exec:java
sur la ligne de commande invoquera le plug-in configuré pour exécuter la classe org.dhappy.test.NeoTraverse
.
Donc, pour déclencher le plug-in à partir de la ligne de commande, exécutez simplement:
mvn exec:java
Maintenant, si vous souhaitez exécuter l’objective exec:java
dans le cadre de votre version standard, vous devez associer l’objective à une phase particulière du cycle de vie par défaut . Pour ce faire, déclarez la phase
à laquelle vous souhaitez lier l’objective dans l’élément d’ execution
:
org.codehaus.mojo exec-maven-plugin 1.4 my-execution package java org.dhappy.test.NeoTraverse
Avec cet exemple, votre classe serait exécutée pendant la phase du package
. Ceci n’est qu’un exemple, adaptez-le à vos besoins. Fonctionne également avec la version 1.1 du plugin.
Afin d’exécuter plusieurs programmes, j’avais aussi besoin d’une section de profiles
:
traverse traverse org.codehaus.mojo exec-maven-plugin java -classpath org.dhappy.test.NeoTraverse
Ceci est alors exécutable comme:
mvn exec:exec -Dtraverse