문제
Java 클래스의 기본 메소드를 간단히 실행하기 위해 Maven "Phase"또는 "Goal"이 있습니까? 단순히 "MVN Run"과 같은 작업을 수행하여 수동으로 테스트하고 싶은 프로젝트가 있습니다.
해결책
참조 Exec Maven 플러그인. 다음을 사용하여 Java 클래스를 실행할 수 있습니다.
mvn exec:java -Dexec.mainClass="com.example.Main" [-Dexec.args="argument1"] ...
호출은 간단 할 수 있습니다 mvn exec:java
플러그인 구성이 pom.xml에있는 경우 Mojohaus의 플러그인 사이트에는 a가 있습니다 더 자세한 예.
<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. pom.xml 편집
다음 속성을 추가하십시오 pom.xml
. 완전한 자격을 갖춘 클래스 이름 (예 : 패키지 이름)을 사용하는지 확인하십시오. main
방법:
<properties>
<exec.mainClass>${fully-qualified-class-name}</exec.mainClass>
</properties>
2. 명령을 실행하십시오
이제 터미널에서 다음 명령을 트리거하십시오.
mvn clean compile exec:java
노트 당신은 더 많은 논쟁을 통해 전달할 수 있습니다 -Dexec.args="xxx"
깃발.
줘 Exec Maven 플러그인 시도
pom.xml에 새 플러그인을 추가 할 필요가 없습니다. 이 명령을 실행하십시오
mvn org.codehaus.mojo:exec-maven-plugin:1.5.0:java -Dexec.mainClass="com.example.Main" | grep -Ev '(^\[|Download\w+:)'
참조 Maven Exec 플러그인 더 많은 사용을 위해.
clean package exec:java -P Class_Containing_Main_Method
프로젝트에 하나의 주요 메소드 (PSVM) 만있는 경우 다음 Maven 설정이있는 경우 명령이 옵션입니다.
수업을 언급하는 것을 잊지 마십시오 <properties></properties>
섹션 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 위의 Maven 설정과 함께 구성 실행 :
제휴하지 않습니다 StackOverflow