Maven 입문 | Java 응용 프로그램 개발 | exec-maven-plugin Java 실행

작성한 Java 응용 프로그램을 간단히 실행할 수 있도록 하는 플러그인 설정에 대해 설명한다.

프로그램의 실행은 exec-maven-plugin이라는 플러그인을 이용한다. 이 플러그인에 실행하는 응용 프로그램 클래스의 정보를 추가 기입해 두는 것으로, 프로그램을 간단히 수행 할 수 있다.

이 플러그인의 설정 정보는 다음과 같이 작성한다. (버전은 2017 년 12 월 현재 최신 버전이다)

<plugin>
    <groupId>org.codehaus.mojo</groupId>
    <artifactId>exec-maven-plugin</artifactId>
    <version>1.6.0</version>
    <configuration>
        <mainClass>실행 클래스 지정</mainClass>
    </configuration>
</plugin>

설정으로 <configuration> 태그 안에 작성해야 하는 것은 <mainClass>라는 태그이다. 이것이 실행되는 응용 프로그램의 클래스를 설정한다.

앞전에 작성한 SampleMavenApp 프로젝트에서는 com.devkuma.App라는 클래스가 메인 클래스로 되어 있었는데, 이것을 <mainClass>에 지정하면 된다.

<plugin>
    <groupId>org.codehaus.mojo</groupId>
    <artifactId>exec-maven-plugin</artifactId>
    <version>1.6.0</version>
    <configuration>
        <mainClass>com.devkuma.App</mainClass>
    </configuration>
</plugin>

프로그램 실행

이제 프로그램을 실행해 보자. 이는 매우 간단한다. 프로젝트 폴더에 현재 디렉토리를 이동해서 다음과 같이 실행하면 된다.

$ mvn exec:java

그러면 <mainClass>에 지정된 클래스를 실행한다. 예제인 SampleMavenApp 프로젝트 실행을 하면 다음과 같이 출력될 것이다.

[INFO] Scanning for projects...
[INFO]                                                                         
[INFO] ------------------------------------------------------------------------
[INFO] Building SampleMavenApp 1.0-SNAPSHOT
[INFO] ------------------------------------------------------------------------
[INFO] 
[INFO] --- exec-maven-plugin:1.6.0:java (default-cli) @ SampleMavenApp ---
Hello World!
[INFO] ------------------------------------------------------------------------
[INFO] BUILD SUCCESS
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 0.703 s
[INFO] Finished at: 2017-12-13T20:59:26+09:00
[INFO] Final Memory: 7M/155M
[INFO] ------------------------------------------------------------------------

출력의 중간 쯤에 “Hello World!“라는 텍스트가 보일 것이다. 이것이 App 클래스를 실행하여 출력된 결과이다. 마지막으로 “BUILD SUCCESS"이라고 빌드 결과가 출력되고, 제대로 프로그램이 실행되는 것을 확인할 수 있다.