Exec Maven 플러그인 - Maven 빌드에서 Java 프로그램 실행
Maven exec 플러그인을 사용하면 maven 명령에서 시스템 및 Java 프로그램을 실행할 수 있습니다.
maven exec 플러그인에는 두 가지 목표가 있습니다.
- exec:exec - 별도의 프로세스에서 모든 프로그램을 실행하는 데 사용할 수 있습니다.
- exec:java - 동일한 VM에서 Java 프로그램을 실행하는 데 사용할 수 있습니다.
이 튜토리얼에서는 exec:java를 사용하여 maven 프로젝트에서 Java 프로그램을 실행하는 방법을 배웁니다.
1단계: pom.xml에 exec-maven-plugin 구성 추가
maven 플러그인을 사용하려면 pom.xml 빌드 섹션에서 구성해야 합니다. 프로젝트 pom.xml 파일에 아래 플러그인 구성을 추가하기만 하면 됩니다.
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>exec-maven-plugin</artifactId>
<version>1.6.0</version>
<configuration>
<mainClass>com.journaldev.maven.utils.BuildInfo</mainClass>
</configuration>
</plugin>
여기서 주목해야 할 가장 중요한 점은 "configuration\ 내부의 "mainClass\ 요소입니다. 여기에서 exec:java 목표에 의해 실행될 Java 클래스를 지정합니다.
다음은 Java 클래스의 내용입니다. Java 버전 세부 정보와 현재 시간을 인쇄하는 간단한 클래스입니다.
package com.journaldev.maven.utils;
import java.time.LocalDateTime;
public class BuildInfo {
public static void main(String[] args) {
String javaVersion = Runtime.version().toString();
String time = LocalDateTime.now().toString();
System.out.println("********\nBuild Time: " + time
+ "\nJava Version: " + javaVersion + "\n********");
}
}
2단계: exec:java 목표로 maven 빌드 실행
다음은 exec:java 목표로 maven 빌드를 실행할 때의 출력입니다.
$ mvn exec:java
[INFO] Scanning for projects...
[INFO]
[INFO] ---------------< com.journaldev.maven:maven-example-jar >---------------
[INFO] Building maven-example-jar 0.0.1-SNAPSHOT
[INFO] --------------------------------[ jar ]---------------------------------
[INFO]
[INFO] --- exec-maven-plugin:1.6.0:java (default-cli) @ maven-example-jar ---
********
Build Time: 2020-01-10T12:44:17.718061
Java Version: 13.0.1+9
********
[INFO] ------------------------------------------------------------------------
[INFO] BUILD SUCCESS
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 0.591 s
[INFO] Finished at: 2020-01-10T12:44:17+05:30
[INFO] ------------------------------------------------------------------------
$
참조:
- Exec Maven 플러그인 홈 페이지