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 robiąc coś w rodzaju "mvn run".Maven Run Project
Odpowiedz
Zobacz exec maven plugin. Można uruchomić klas Java przy użyciu:
mvn exec:java -Dexec.mainClass="com.example.Main" [-Dexec.args="argument1"] ...
Wywołanie może być proste jak mvn exec:java
jeśli konfiguracja wtyczki jest w pom.xml. Strona wtyczki na Mojohaus ma more detailed example.
<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>
Daj Exec Maven plugin spróbować polecenia
clean package exec:java -P Class_Containing_Main_Method
jest również opcja, jeśli masz tylko jedną metodę Main (PSVM) w projekcie, z następującym Maven Setup.
Nie zapomnij wspomnieć klasę w sekcji <properties></properties>
z 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 wraz z wyżej konfiguracji Maven:
Wyżej wymienione odpowiedzi są poprawne ale upraszczam go dla takich noobów jak ja. Przejdź do pliku pom w swoim projekcie. Dodaj nową właściwość exec.mainClass
i podaj jej wartość jako klasę zawierającą główną metodę. Dla mnie było to DriverClass
w mainpkg
. Zmień go zgodnie z projektem.
Uczyniwszy to przejdź do folderu, który zawiera uruchomić ten projekt na pom.xml
iw wierszu polecenia mvn exec:java
. To powinno wywołać główną metodę.
Nie trzeba dodawać nowej wtyczki do pom.xml. Po prostu uruchom polecenie:
mvn org.codehaus.mojo:exec-maven-plugin:1.5.0:java -Dexec.mainClass="com.example.Main" | grep -Ev '(^\[|Download\w+:)'
Zobacz więcej informacji na stronie maven exec plugin.
Przekaż dalsze argumenty przez '-Dexec.args =" ... arg ... "' – sstn
- 1. C# Project Management with Maven
- 2. Eclipse Maven: brak opcji "Checkout Maven project from SCM"
- 3. VerrifyError z Guice na Androidzie maven project
- 4. Maven "Module" vs "Project" (Eclipse, plugin m2eclipse)
- 5. Konwertuj istniejący projekt na maven project
- 6. cobertura na maven multi module project
- 7. Hive 0.14 UDF Maven Project Brakujące zależności
- 8. Maven bagażnika sprężyna run debugowania z argumentami
- 9. Konwersja projekt Maven Dynamic Project Web dla Eclipse
- 10. FileNotFoundException z uruchomionym programem JBehave (Maven Project, IntelliJ)
- 11. Pierwsze org.springframework.beans.factory.BeanCreationException z moim pierwszym Maven, Spring Project
- 12. zaktualizuj adres URL scm dla maven multi module project
- 13. Czy istnieje "run stack" podobny do `cabal run`?
- 14. Eclipse Warning: Unknown Faceted Project
- 15. mvn spring-boot: run nie startuje wiosna
- 16. IntelliJ POMYSŁ nie "hiperłącza" do plików źródłowych w oknie narzędzia Run Run
- 17. Prośba o uprawnienia w Run Run Ionic
- 18. Biblioteka klasy Project Project VS App_Code - Plusy/minusy?
- 19. Importowanie istniejącego projektu Android Project do Eclipse Renames Project
- 20. React-natywny Awesome project not building android project
- 21. C# class class project project injection inset bootstrap
- 22. Jak uwzględnić wartość pola Project Project w żądaniu CSOM
- 23. build.xml w Java project
- 24. Agile Project Management
- 25. Faceted Project Eclipse environment
- 26. Project-Embedded IoC Container
- 27. C# Project Global AssemblyInfo
- 28. developer.android.com/training bitmapfun project
- 29. mvn tomcat7: run - jak to działa?
- 30. mvn tomcat: run nie uruchamia Tomcat
exec: java nie zrobił nic dla mnie, ale exec: exec załatwił sprawę. –
Oto jak powinna wyglądać odpowiedź! referencja + prosty przykład + złożony przykład. prosty przykład zrobił mi sztuczkę (nie trzeba już konfiguracji) – codewing
czy istnieje nowsza wersja tej wtyczki (nowsza niż 1.2.1?) –