Projet Maven Run

Existe-t-il une “phase” ou un “objective” Maven pour exécuter simplement la méthode principale d’une classe Java? J’ai un projet que je voudrais tester manuellement en faisant simplement quelque chose comme “mvn run”.

Voir le plugin exec maven . Vous pouvez exécuter des classes Java en utilisant:

mvn exec:java -Dexec.mainClass="com.example.Main" [-Dexec.args="argument1"] ... 

L’invocation peut être aussi simple que mvn exec:java si la configuration du plug-in se trouve dans votre fichier pom.xml. Le site du plugin sur Mojohaus a un exemple plus détaillé .

     org.codehaus.mojo exec-maven-plugin 1.2.1  com.example.Main  argument1       

Les réponses mentionnées ci-dessus sont correctes mais je le simplifie pour les personnes comme moi. Accédez au fichier pom de votre projet. Ajoutez une nouvelle propriété exec.mainClass et donnez sa valeur en tant que classe contenant votre méthode principale. Pour moi, c’était DriverClass dans mainpkg . Changez-le selon votre projet. entrer la description de l'image ici

Après avoir fait cela, accédez au dossier contenant le pom.xml votre projet et exécutez-le à l’invite de commande mvn exec:java . Cela devrait appeler la méthode principale.

Essayez le plug – in Exec Maven

Pas besoin d’append un nouveau plugin dans pom.xml. Il suffit de lancer cette commande

 mvn org.codehaus.mojo:exec-maven-plugin:1.5.0:java -Dexec.mainClass="com.example.Main" | grep -Ev '(^\[|Download\w+:)' 

Voir le plugin maven exec pour plus d’utilisation.

1. Modifier POM.xml

Ajoutez la propriété suivante dans pom.xml , veillez à utiliser le nom de classe complet (c’est-à-dire avec le nom du package) qui contient la méthode main .

  ${fully-qualified-class-name}  

2. Exécuter la commande

Maintenant, à partir du déclencheur de terminal suivant la commande –

 mvn clean comstack exec:java 

NOTE Vous pouvez transmettre d’autres arguments via l’ -Dexec.args="xxx"

clean package exec:java -P Class_Containing_Main_Method commande clean package exec:java -P Class_Containing_Main_Method est également une option si vous n’avez qu’une seule méthode principale (PSVM) dans le projet, avec la configuration Maven suivante.

N’oubliez pas de mentionner la classe dans la section de pom.xml :

  UTF-8 com.test.service.MainTester   org.codehaus.mojo exec-maven-plugin 1.2.1  ${java.main.class}   

STS Run Configuration avec Maven Setup ci-dessus:

entrer la description de l'image ici