Réponses:
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 plugin se trouve dans votre pom.xml. Le site du plugin sur Mojohaus a un exemple plus détaillé .
<project>
<build>
<plugins>
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>exec-maven-plugin</artifactId>
<version>1.2.1</version>
<configuration>
<mainClass>com.example.Main</mainClass>
<arguments>
<argument>argument1</argument>
</arguments>
</configuration>
</plugin>
</plugins>
</build>
</project>
Ajoutez la propriété suivante dans pom.xml
. Assurez-vous d'utiliser le nom de classe complet (c'est-à-dire avec le nom du package) qui contient la main
méthode:
<properties>
<exec.mainClass>fully-qualified-class-name</exec.mainClass>
</properties>
À partir du terminal, déclenchez la commande suivante:
mvn clean compile exec:java
REMARQUE Vous pouvez passer d'autres arguments via -Dexec.args="xxx"
flag.
Les réponses mentionnées ci-dessus sont correctes mais je les simplifie pour les noobs comme moi.Allez au fichier pom de votre projet. Ajoutez une nouvelle propriété exec.mainClass
et indiquez sa valeur en tant que classe contenant votre méthode principale. Pour moi , il était DriverClass
en mainpkg
. Changez-le selon votre projet.
Cela fait, accédez au dossier qui contient vos projets pom.xml
et exécutez-le à l'invite de commande mvn exec:java
. Cela devrait appeler la méthode principale.
Pas besoin d'ajouter un nouveau plugin dans pom.xml. Exécutez simplement 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.
-Dexec.args="...arg..."
Donnez le Maven Exec plug - in essayer
clean package exec:java -P Class_Containing_Main_Method
La commande 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 <properties></properties>
section pom.xml
:
<properties>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
<java.main.class>com.test.service.MainTester</java.main.class>
</properties>
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>exec-maven-plugin</artifactId>
<version>1.2.1</version>
<configuration>
<mainClass>${java.main.class}</mainClass>
</configuration>
</plugin>
Configuration d'exécution STS avec la configuration Maven ci-dessus:
-P
c'est pour le profil. Partagé, car c'est également une option pour exécuter le projet Maven.