개발하다 보면 html 파일을 수정할 때마다 서버를 재시작하는 일은 매우 번거롭다.
개발 생산성을 높이기 위해서 Spring Boot에서는 Spring Boot Devtools 모듈을 제공하여 개발 시 유용한 기능들을 제공한다.
Intellij에서 Spring Boot Devtools 의존성을 추가하였지만, 소스코드가 바로 적용이 안되시는 분들을 한 번 따라 해보면 좋을 것 같다.
대표적인 기능
- Automatic Restart : classpath에 있는 파일이 변경될 때마다 감지하여 애플리케이션을 자동으로 재시작해준다.
- Live Reload : 정적 자원(html, css, js) 수정 시 새로고침 없이 바로 적용할 수 있다.
- Property Defaults : Thymeleaf는 기본적으로 성능을 향샹시키기 위해서 캐싱 기능을 사용한다. 이 캐싱 기능을 false 값으로 설정하여 수정한 소스가 바로 반영되어지도록 적용할 수 있다.
세팅 환경
- IntelliJ IDEA 2021.3.1 (Ultimate Edition)
- SpringBoot 2.6.6
- gradle
Spring Boot Devtools 적용
1. build.gradle에 dependencies 추가
developmentOnly 'org.springframework.boot:spring-boot-devtools'
2. Preferences > Build, Execution, Deployment > Compiler > Build project automatically 체크
2. Preferences > Advanced Settings > Compiler > Allow auto-make to start even if developed ... 체크
3. Edit Configurations...
4. Modify options
5. On 'Update' action > Update classes and resources 체크
6. On frame deactivation > Update classes and resources 체크
7. Modify options 확인
* 설정을 하나씩 추가해 보며 소스코드가 적용이 되는지 확인해 보면 좋을 것 같다.
나 같은 경우 브라우저 새로고침을 2번 해야지 html 소스코드가 적용이 되었는데 6번(프레임 비활성 시 클래스 및 리소스 업데이트를 체크)을 적용했더니 새로고침 한 번에 바로 적용이 되었다.
'Spring' 카테고리의 다른 글
토이 프로젝트 _ STEP 01(NCP Server) (0) | 2022.06.06 |
---|---|
[SpringBoot] Error resolving template (0) | 2022.06.03 |
SpringBoot 프로젝트 안에 H2 DB 파일 생성 (0) | 2022.04.04 |
스프링 부트 배치 - 심화 (0) | 2021.05.23 |
스프링 부트 배치 - 기본 (2) | 2021.05.19 |