SpringBoot에 DevTools
셋팅을 해보겠습니다.
DevTools의 LiveReload
기능이 제일 많이 쓰입니다.
LiveReload
기능은 정적소스(html, css, js)에 변화가 있을 때 application이 자동으로 브라우저 새로 고침을 트리거 할 수 있게 해주는 프로토콜입니다.
이제 설정 방법을 알아보겠습니다. 설정 방법은 간단합니다.
0) build.gradle
developmentOnly 'org.springframework.boot:spring-boot-devtools'
1) Setting > Build auto 셋팅
2) Advanced Setting > Allow auto-make to start even.. 셋팅
4) LiveReload 브라우저 확장프로그램 설치
Thymeleaf를 사용한 html 파일 수정에도 바로 reload가 적용되기 위해서는 추가 작업이 필요합니다.
0) application.yml
: Thymeleaf가 캐싱해서 가져오는 것 막기
spring:
devtools:
livereload:
enabled: true
# thymeleaf cache 비활성화
thymeleaf:
cache: false
실제로 위 방식으로 해봤지만 나는 잘 되지 않았다.
그래서 수동으로 리컴파일을 하니 잘되고 있다.. 왜 안되는지 다른 분들이 좀 알려주시면 감사하겠다. ^^;;
수동으로 빌드하는 방법
html 파일을 수정한 후 Build탭을 확인해 보면 아래 사진과 같이 해당 파일의 Recompile(ctrl+shift+F9)이 활성화하면 된다.
클릭하고 확인하면 정상적으로 반영이 됨을 확인 할 수 있다!
재고
1) `Edit Configuration` > `Modify options`
`On 'Update' action`, `On 'frame' deactivation` -> `Udate resources`
![](https://velog.velcdn.com/images%2Fmooh2jj%2Fpost%2F410557fb-ca1e-4632-948e-ef4071555b69%2Fimage.png)
![](https://velog.velcdn.com/images%2Fmooh2jj%2Fpost%2Fbf5a4180-791b-43cd-841b-a6ffde49ad0a%2Fimage.png)