Spring Boot 의 강점은 내장 서버가 있어 실행 가능한 Jar 파일을 만들어 배포가 쉽습니다.
Spring Boot의 많은 의존성 Library 와 사용자가 추가한 Library 를 하나의 Jar파일로 패키징 해준다는게 정말 대단한것 같습니다.
Spring Boot + Gradle 프로젝트를 생성하면 기본 Jar 를 배포할 수 있도록 설정이 되어있습니다.
Jar 파일로 생성할 때에는 로컬 환경과 동일하며 따로 설정이 필요없다는 장점이 있습니다.
SpringBootTest 라는 프로젝트를 생성했을때 만들어지는 프로젝트명Application 에서 내장톰켓을 사용하는데 이대로 Jar 로 빌드하면 됩니다.
package com.gigas;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
@SpringBootApplication
public class SpringBootTestApplication {
public static void main(String[] args) {
SpringApplication.run(SpringBootTestApplication.class, args);
}
}
build.gradle 에서 jar 생성관련 설정을 할 수 있습니다.
Name 과 Version, File Name 등을 설정할 수 있으며 따로 설정이 없다면 프로젝트명 + Version 이 붙어서 생성됩니다.
bootJar {
archiveBaseName = '-'
archiveFileName = '-.jar'
archiveVersion = "0.0.0"
}
준비는 끝났으며 Jar 를 만들어줍니다.
CLI 터미널에서 명령어로 생성해보겠습니다.
만들어준 SpringBootTest 경로로 들어갑니다.
Spring Boot 를 Jar로 생성하기 때문에 bootJar 명령어롤 통해 Jar 를 생성합니다.
빌드가 성공하면 프로젝트 경로로 들어가서 확인할 수 있습니다.
build > libs 안에 jar 파일이 생성됨을 알 수 있습니다.
IntelliJ 에서는 Gradle 탭에서 간단하게 생성이 가능합니다.
Tasks > build 안에 실행가능한 bootJar 스크립트를 더블클릭하면 됩니다.
정상적으로 실행이 되면 아래와 같은 문구가 보여질 것입니다.
실행가능한 Jar 파일을 생성했으니 실행하는 방법을 알아보겠습니다.
간단합니다. java -jar JarName.jar 명령어로 실행 할 수 있습니다.
그러면 아래와 같이 같은 로컬환경이지만 실행가능한 Jar 로 배포를 한것입니다.
http://localhost:8080 으로 접속했습니다.
port 를 따로 지정했을시 port만 바꿔서 접속 가능합니다.
개인 서버가 있으시다면 업로드 후에 동일하게 명령어를 입력하면 정상적으로 실행되는것을 확인할 수 있습니다.
실행하기전에 로컬에 띄워져있는 서버와 Port 가 충돌날 가능성이 높으니 주의하시기 바랍니다.
'프로그래밍 > Spring' 카테고리의 다른 글
[Spring] Spring Boot 2.0 Gradle War 배포 (4) | 2019.04.25 |
---|---|
[Spring] IntelliJ Lombok Plugin 설치 (0) | 2019.04.24 |
[Spring] Spring Boot 2.0 Error Custom Page NEW (0) | 2019.04.23 |
[Spring] Gradle 외부 Jar 등록 (0) | 2019.04.22 |
[Spring] Spring Boot 2.0 @Configuration (0) | 2019.04.17 |