시작하기 앞서
방학을 맞아 Spring Boot를 이용하여 프로젝트를 진행하던 중 Live Reload를 적용하려고 여러가지 시도를 해봤다. 언제나 그렇듯 인터넷에 널린 자료들은 나에게는 적용이 안되었다. 그 삽질을 포스팅하기로 했다.
시도한 것
굉장히 많은 포스팅을 보면서 적용을 시도했지만 실패했다.
Gradle 의존성 주입
developmentOnly 'org.springframework.boot:spring-boot-devtools'
devtools 의존성을 주입해야한다. devtools안에 Live Reload server가 내장되어 있다.
Chrome Extension 설치
Live Reload Extension을 설치한다. 설치 링크
브라우저 캐시 삭제
브라우저의 캐시된 이미지 또는 파일을 삭제한다.
IntelliJ 설정
Ctrl + Shift + A
를 누르고 Registry를 검색한다.ide.windowSystem.autoShowProcessPopup
, compiler.automake.allow.when.app.running
을 check한다.
Ctrl + Alt + S -> Compiler -> Build project automatically check
Edit Configuration 추가
Edit Configuration에 On 'update' action과 On frame deactivation이 Do Nothing으로 설정되어 있었다. 그래서 바꿔준다.Edit Configurations -> On 'Update' action -> Update classes and resources
Edit Configurations -> On frame deactivation -> Update classes and resources
Gradle properties 추가
나는 application.properties를 사용했다.
기존 포스팅들에는 spring.devtools.livereload.enabled=true
만 있었다. 이걸 입력했을 때 나는 안됐다. 또 다른 방법으로는 Main class에서 핸들링하는 방법도 있었다. 아래와 같이 입력하라고 했었다.
System.setProperty("spring.devtools.restart.enabled", "false");
System.setProperty("spring.devtools.livereload.enabled", "true");
그런데 나는 또 안됐다. 그러다가 이 포스팅에서 답을 찾았다.
application.properties에 spring.thymeleaf.cache=false
를 추가해주면 된다.
이러면 잘 되더라.... 삽질 끝~
'WEB SERVER [ 웹 서버 ] > SPRING BOOT [스프링 부트]' 카테고리의 다른 글
최신 글 부터 목록에 표시하기 (0) | 2020.01.14 |
---|
최근댓글