Czy istnieje „faza” lub „cel” Mavena, aby po prostu wykonać główną metodę klasy Java? Mam projekt, który chciałbym przetestować ręcznie, po prostu wykonując coś w stylu „Uruchom mvn”.
231
Zobacz wtyczkę exec maven . Możesz uruchamiać klasy Java za pomocą:
mvn exec:java -Dexec.mainClass="com.example.Main" [-Dexec.args="argument1"] ...
Wywołanie może być tak proste, mvn exec:java
jakby konfiguracja wtyczki znajdowała się w pliku pom.xml. Witryna wtyczek na Mojohaus ma bardziej szczegółowy przykład .
<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. Edytuj POM.xml
Dodaj następującą właściwość w
pom.xml
. Upewnij się, że używasz w pełni kwalifikowanej nazwy klasy (tj. Z nazwą pakietu), która zawieramain
metodę:2. Uruchom polecenie
Teraz z terminalu uruchom następujące polecenie:
UWAGA Możesz przekazać kolejne argumenty za pomocą
-Dexec.args="xxx"
flagi.źródło
Powyższe odpowiedzi są poprawne, ale upraszczam je dla noobów takich jak ja. Przejdź do pliku pom twojego projektu. Dodaj nową właściwość
exec.mainClass
i podaj jej wartość jako klasę, która zawiera główną metodę. Dla mnie to byłoDriverClass
wmainpkg
. Zmień to zgodnie z projektem.Po wykonaniu tej czynności przejdź do folderu zawierającego projekt
pom.xml
i uruchom go w wierszu poleceniamvn exec:java
. To powinno wywołać główną metodę.źródło
Nie ma potrzeby dodawania nowej wtyczki do pom.xml. Po prostu uruchom to polecenie
Zobacz wtyczkę maven exec, aby uzyskać więcej informacji.
źródło
-Dexec.args="...arg..."
Daj Exec Maven Plugin spróbować
źródło
clean package exec:java -P Class_Containing_Main_Method
polecenie jest również opcją, jeśli masz tylko jedną metodę główną (PSVM) w projekcie, z następującą instalacją Maven.Nie zapomnij wspomnieć o klasie w
<properties></properties>
sekcjipom.xml
:Konfiguracja uruchamiania STS wraz z powyższą konfiguracją Maven:
źródło
-P
dotyczy profilu. Udostępniłem to, ponieważ jest to również opcja uruchomienia projektu Maven.