최근 회사에서 개발한 서버 프로그램을 온 프로미스 형태로 납품하는 업무가 자주 생겼고, 기존에 jar파일로 프로그램을 빌드하고, launch4j 프로그램을 통해 직접 한 땀 한 땀 설정해서 exe 파일을 만들었던 것이 너무 불편하고 빡침이 몰려와서(갠 적으로 노가다를 싫어함..) 자동화할 방법이 없나하다가 방법을 찾아서 포스트를 올려본다.
정말 간단한 해결방법이다. 사실 예전부터 있었던 방법인데 내가 아마 늦게 알게된것 같다. 보통 Java 프로젝트를 진행하면 라이브러리 의존성 관리 및 빌드 도구로 maven 또는 gradle을 사용할 것이다. launch4j는 maven이나 gradle에서 모두 적용이 가능하다. 나는 gradle을 사용하고 있기 때문에 gradle을 이용한 방법을 소개한다.
먼저 launch4j의 gradle 플러그인 github 저장소 페이지이다. README.md에는 각종 옵션과 설정파일에 대한 설명을
친절하게 적어놨다.
https://github.com/TheBoegl/gradle-launch4j
Gradle 플러그인 페이지에 소개된 내용이다. Gradle의 DSL을 지원하는 경우와 Legacy Gradle Project 인 경우, 2가지 모두 설정 방법을 친절하게 작성해놨다.
https://plugins.gradle.org/plugin/edu.sc.seis.launch4j
난 DSL을 지원하기 때문에 간단하게, 다음과 같이 plugin block에 launch4j를 추가하면된다.
plugins {
id "edu.sc.seis.launch4j" version "2.4.6"
}
그다음 gradle을 Sync 하고, gradle task 리스트를 보면 다음과 같이 launch4j가 생기고 그 하위에 createAllExcutable, createExe, launch4j 등의 작업들이 나열된 것을 볼 수 있다. 해당 Task를 실행시키면 자동으로 빌드하고 window 환경에서 실행 가능한 exe 파일이 생성된다.
굳!
'Programming > Java' 카테고리의 다른 글
[Java8] Stream API 공부 정리 (1) (2) | 2020.01.16 |
---|---|
[JPA , Hibernate] Add Prefixed Table Name (0) | 2019.12.13 |
[Intellij(인텔리제이)] Intellij 내장 Http Client로 API 테스트 해보기 (2) | 2019.08.16 |
Gradle 5.0 버전대에서 Querydsl 사용하기 (2) | 2019.07.21 |
클래스 생성과 main 메소드 그리고 HelloWorld 출력 (0) | 2017.09.05 |