Antworten:
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>
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 folgende main
Methode enthält :
<properties>
<exec.mainClass>fully-qualified-class-name</exec.mainClass>
</properties>
Lösen Sie nun vom Terminal aus den folgenden Befehl aus:
mvn clean compile exec:java
HINWEIS Sie können weitere Argumente über das -Dexec.args="xxx"
Flag übergeben.
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 es DriverClass
in mainpkg
. Ä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 aus mvn exec:java
. Dies sollte die Hauptmethode aufrufen.
Es ist nicht erforderlich, ein neues Plugin in pom.xml hinzuzufügen. Führen Sie einfach diesen Befehl aus
mvn org.codehaus.mojo:exec-maven-plugin:1.5.0:java -Dexec.mainClass="com.example.Main" | grep -Ev '(^\[|Download\w+:)'
Weitere Informationen finden Sie im Maven Exec-Plugin .
-Dexec.args="...arg..."
Geben Sie den Exec Maven Plugin einen Versuch
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ähnen 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>
STS Run Configuration zusammen mit dem obigen Maven Setup:
-P
ist für Profil. Dies wurde geteilt, da es auch eine Option zum Ausführen des Maven-Projekts ist.