안녕하세요. 그린주입니다 ๑'ٮ'๑
오늘도 힘차게 시작해보겠습니다!
개요
이번 글에서는 SpringBoot + Gradle 프로젝트에서 jar 파일 빌드 및 배포하는 방법을 공유하고자 합니다.
목차
빌드(Build)와 배포(Deploy)
JAR 빌드(생성)
JAR 배포(반영)
1. 빌드(Build)와 배포(Deploy)
1-1. 빌드란 무엇인가?
컴파일된 파일을 실제 실행시킬 수 있는 상태의 파일로 만드는 과정입니다.
컴파일을 포함하여 실행파일을 만드는 과정 또한 빌드라고 부릅니다.
즉, war, jar 등의 실행파일을 만드는 것입니다.
1-2. 배포란 무엇인가?
실행 가능한 파일을 사용자가 접근할 수 있는 환경에 배치하는 것입니다.
즉, 실서버에 반영하는 것입니다.
문장으로 정리하면 서버에 반영하는 것을 "배포"라고 하고 배포하기 위한 과정을 "빌드"라고 합니다.
자, 그럼 빌드하는 방법과 배포하는 방법을 알아봅시다.
2. JAR 빌드(생성)
2-1. IDE(IntelliJ) 사용
IntelliJ에서 우측의 Gradle 탭에서 Tasks > build 안에 실행 가능한 bootJar를 실행하면 끝!입니다.
정상적으로 실행되면 Run 화면에 아래와 같이 출력됩니다.
프로젝트 폴더에 build 폴더가 생성되었고, 아래와 같이 libs 안에 jar 파일이 생성된 것을 확인할 수 있습니다.
2-2. CLI(cmd) 사용
- jar 파일 빌드(jar 파일 생성)
해당 프로젝트 폴더에서 gradlew.bat build 명령어를 실행합니다.
BUILD SUCCESSFUL이라고 뜨면 성공입니다.
아래와 같이 dir 명령어를 실행했을 때 프로젝트 폴더에 build 폴더가 생성되었고,
libs 안에 jar 파일이 생성된 것을 확인할 수 있습니다.
- jar 디렉터리 초기화(jar 파일 삭제)
해당 프로젝트 폴더에서 gradlew.bat clean 명령어를 실행합니다.
실행 후 dir 명령어를 실행해 보면 build 폴더가 사라진 것을 확인할 수 있습니다.
3. JAR 배포(반영)
3-1. 포그라운드(foreground) 배포
포그라운드는 터미널로 직접 연결하여 입/출력을 주고받는 프로세스입니다. 실행되는 동안에는 터미널에서 작업할 수가 없으며, 종료(ctrl+c)를 하거나 로그아웃을 하면 프로세스가 종료됩니다. 테스트 용도로 배포하기 좋은 방법입니다.
빌드 디렉터리(build/libs)에서 아래 명령어를 실행합니다.
> java -jar [jar_file_name].jar
3-2. 백그라운드(background) 배포
백그라운드는 실행되는 동안에도 터미널에서 작업(다른 명령어 실행)이 가능한 프로세스입니다. 종료하거나 로그아웃을 해도 프로세스가 종료되지 않습니다. jar 실행에 대한 로그는 nohup.out 파일에 쌓입니다.
빌드 디렉터리(build/libs)에서 아래 명령어를 실행합니다.
> nohup java -jar [jar_file_name].jar &
마무리
이렇게 SpringBoot + Gradle 프로젝트에서 jar 파일 빌드 및 배포하는 방법에 대해 적어보았습니다.
다들 성공하셨을까요?? 끝까지 파이팅입니다!
긴 글 봐주셔서 감사합니다!
오늘도 행복한 하루 보내세요 ✿'◡'✿
참고
[Spring Boot] Gradle jar 빌드 및 배포하기
'🌜 Programming > Spring Boot' 카테고리의 다른 글
Web server failed to start. Port 8080 was already in use. ( Spring Boot ) (0) | 2022.02.09 |
---|