Spring Devtools restart로 자동 재시작하기

DongHwan·2021년 7월 6일
1

Spring & Spring Boot

목록 보기
2/5

Spring Boot의 Devtools에는 classpath에 속해있는 파일들의 수정을 감지하고 자동으로 재시작해주는 기능이 포함되어 있다. 사용자가 만드는 클래스는 restart classloader로 읽어들이고, 이는 재시작이 완전히 껐다가 다시 키는 것보다 훨씬 빠르게 일어나도록 해준다.

재시작을 설정하는 방법은 두가지가 있다.
1. Spring Devtools의 디펜던시를 추가할 때 등록하는 방법
2. application.properties에서 설정하는 방법

디펜던시를 추가하면서 등록하기

Devtools의 디펜던시를 추가하면서 옵션을 추가해 자동 재시작을 등록할 수 있다.

maven

<dependency>
  <groupId>org.springframework.boot</groupId>
  <artifactId>spring-boot-devtools</artifactId>
  <optional>true</optional> <!-- Restart를 원하지 않을 경우 false -->
</dependency>

디펜던시를 등록할 때, <optional> 태그를 true로 설정해주면 자동 재시작 설정이 된다.

application.properties에서 설정하기

application.properties에서 등록하는 방법은 다음과 같다.
application.properties

spring.devtools.restart.enabled = true

Intellij를 사용하는 경우

Intellij를 사용하는 경우, IDE 자체에서 추가설정을 해주어야 한다.

  1. Intellij의 file->settings->build,execution,deployment->compiler에 있는 build project automatically를 체크해준다.
  2. Intellij에서 SHIFT+CTRL+A를 누르고 registry를 입력한 뒤, compiler.automake.allow.when.app.running을 체크해준다.

위 두가지 설정을 완료하면 Intellij에서 자동 재시작을 사용할 수 있다.

profile
날 어떻게 한줄로 소개해~

0개의 댓글