[Spring Boot] spring-boot-devtools 적용하기

MEUN·2021년 12월 19일
0

1. 개요

스프링 부트에는 애플리케이션 개발을 보다 편리하게 할 수 있도록 도와줄 도구가 포함되어 있다. spring-boot-devtools 모듈은 빌드에 모듈 종속성을 추가하면 사용 가능하다.

spring-boot-devtools에는 아래와 같은 기능을 포함하고 있다.

기능

  • 애플리케이션 재시작과 리로드 자동화
  • 환경설정 정보 기본값 제공
  • 자동설정 변경사항 로깅
  • 정적 자원 제외
  • 라이브 리로드 지원

참고 링크 : https://docs.spring.io/spring-boot/docs/1.5.16.RELEASE/reference/html/using-boot-devtools.html


2. 적용 방법


1) Maven

optional을 지정할 경우 선택적 의존관계는 실제 운영 환경의 코드에는 추가되지 않는다.

<dependencies>
    <dependency>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-devtools</artifactId>
        <optional>true</optional>
    </dependency>
</dependencies>

2) Gradle

dependencies {
    developmentOnly("org.springframework.boot:spring-boot-devtools")
}

3. 자동 재시작

스프링 부트 개발자 도구 모듈을 추가하고 코드 변경 시 재시작과 리로딩이 동작함을 확인할 수 있다.

재시작 유발 신호는 IDE마다 다를 수 있는데, 이클립스는 저장 명령이 재시작을 유발하고, IntelliJ는 Build Project 명령이 재시작을 유발한다.


4. 프로퍼티 기본값

애플리케이션을 개발 모드로 실행하면 아래와 같은 로그가 화면에 표시된다.

2021-12-19 20:52:07.080 INFO 18228 --- [ restartedMain] .e.DevToolsPropertyDefaultsPostProcessor : Devtools property defaults active! Set 'spring.devtools.add-properties' to 'false' to disable

로그에 조회된 DevToolsPropertyDefaultsPostProcessor 클래스를 조회해보면 아래와 같이 기본으로 설정된 프로퍼티들을 확인할 수 있다.

0개의 댓글