Gibt es eine Maven- "Phase" oder ein "Ziel", um einfach die Hauptmethode einer Java-Klasse auszuführen? Ich habe ein Projekt, das ich manuell testen möchte, indem ich einfach so etwas wie "mvn run" mache.
231
Siehe das Exec Maven Plugin . Sie können Java-Klassen ausführen mit:
mvn exec:java -Dexec.mainClass="com.example.Main" [-Dexec.args="argument1"] ...
Der Aufruf kann so einfach sein, als mvn exec:java
ob sich die Plugin-Konfiguration in Ihrer pom.xml befindet. Die Plugin-Site auf Mojohaus hat ein detaillierteres Beispiel .
<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>
1. Bearbeiten Sie POM.xml
Fügen Sie die folgende Eigenschaft hinzu
pom.xml
. Stellen Sie sicher, dass Sie den vollständig qualifizierten Klassennamen (dh mit dem Paketnamen) verwenden, der die folgendemain
Methode enthält :2. Führen Sie den Befehl aus
Lösen Sie nun vom Terminal aus den folgenden Befehl aus:
HINWEIS Sie können weitere Argumente über das
-Dexec.args="xxx"
Flag übergeben.quelle
Die oben genannten Antworten sind korrekt, aber ich vereinfache sie für Noobs wie mich. Gehen Sie zur POM-Datei Ihres Projekts. Fügen Sie eine neue Eigenschaft hinzu
exec.mainClass
und geben Sie ihren Wert als Klasse an, die Ihre Hauptmethode enthält. Für mich war esDriverClass
inmainpkg
. Ändern Sie es gemäß Ihrem Projekt.Navigieren Sie anschließend zu dem Ordner, der Ihre Projekte enthält,
pom.xml
und führen Sie diesen an der Eingabeaufforderung ausmvn exec:java
. Dies sollte die Hauptmethode aufrufen.quelle
Es ist nicht erforderlich, ein neues Plugin in pom.xml hinzuzufügen. Führen Sie einfach diesen Befehl aus
Weitere Informationen finden Sie im Maven Exec-Plugin .
quelle
-Dexec.args="...arg..."
Geben Sie den Exec Maven Plugin einen Versuch
quelle
clean package exec:java -P Class_Containing_Main_Method
Der Befehl ist auch eine Option, wenn Sie nur eine Hauptmethode (PSVM) im Projekt mit dem folgenden Maven-Setup haben.Vergessen Sie nicht, die Klasse im
<properties></properties>
Abschnitt zu erwähnenpom.xml
:STS Run Configuration zusammen mit dem obigen Maven Setup:
quelle
-P
ist für Profil. Dies wurde geteilt, da es auch eine Option zum Ausführen des Maven-Projekts ist.