Spring Boot가 제공하는 optional한 tool로 아래 의존성 추가해야 함
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-devtools</artifactId>
</dependency>
- 캐시 설정을 개발 환경에 맞게 변경
- 클래스패스에 있는 파일이 변경될 때마다 어플리케이션을 자동으로 재시작
- 직접 껐다 켜는 것(cold starts)보다 빠름
- 리로딩보다는 느림(JRebel 같은 건 아님)
- 리스타트하고 싶지 않은 리소스 : spring.devtools.restart.exclude
- 리스타트 기능 끄기 : spring.devtools.restart.enabled=false - 라이브 리로드
- 리스타트(서버 재시작) 했을 때 브라우저 자동 리프레시하는 기능
- 브라우저 플러그인 설치해야 함
- 라이브 리로드 서버 끄기 : spring.devtools.liveload.enabled=false - 글로벌설정
- ~/.spring-boot-devtools.properties
- application.properties보다 우선순위 높음
- spring-boot-devtools 의존성이 있는 경우 1순위 외부설정 - 리모트 어플리케이션
- 원격으로 어플리케이션을 띄워놓고 로컬에서 실행하는 것
- 절대 프로덕션용으로 사용하지 말 것
Spring Boot는 클래스 로더를 2개 사용
- Base Classloader : 라이브러리, 의존성들을 읽어들임
- Restart Classloader : 어플리케이션을 읽어들임
Spring-Boot-Devtools가 제공하는 기능들이 완벽하지도 않을 뿐더러, 큰 장점이 없기 때문에
꼭 필요한 경우가 아니라면 캐시설정 바꾸는 부분만 properties 파일에 추가해서 사용하는 것이 더 나아보임
https://www.inflearn.com/course/%EC%8A%A4%ED%94%84%EB%A7%81%EB%B6%80%ED%8A%B8/dashboard
스프링 부트 개념과 활용 - 인프런 | 강의
스프링 부트의 원리 및 여러 기능을 코딩을 통해 쉽게 이해하고 보다 적극적으로 사용할 수 있는 방법을 학습합니다., - 강의 소개 | 인프런...
www.inflearn.com
Spring Boot Devtools 설정하기(for 편한 개발)
Spring Boot Devtools는 애플리케이션 개발 시 유용한 기능들을 제공하는 모듈이다. 해당 모듈을 이용하면 개발 생산성을 향상시키는 데 도움을 줄 수 있다. Spring Boot Devtools에서 제공하는 대표적인 기
velog.io
'Java > Spring Boot' 카테고리의 다른 글
[Spring Boot] 정적 리소스 지원 (0) | 2022.04.03 |
---|---|
[Spring Boot] Spring Web MVC (0) | 2022.03.27 |
[Spring Boot] Test (0) | 2022.03.23 |
[Spring Boot] 로깅 - 커스터마이징 (0) | 2022.03.22 |
[Spring Boot] 로깅 - Spring Boot 기본 로거 설정 (0) | 2022.03.22 |