Backend/Spring

Eclipse - Hot reload(Hot deploy) 설정

둉이 2021. 8. 22. 21:22

스프링 개발을 하다 보면 java 파일을 수정할 때마다 톰캣이 재부팅 되면서 수정 사항이 반영되기 때문에 약 10초 가량을 기다려야 하는 불편함이 있다.

 

간단하게 Springloaded를 의존성에 추가하여 hot reload 기능을 사용할 수 있다.

아쉽게도 그냥 톰캣 재부팅 없이 수정사항만 반영될 뿐, 자동으로 새로고침까지 해주지는 않는다.

 

 

eclipse에서 설정

 

1. maven repository에서 Springloaded 검색 후 jar 파일 다운로드

https://repo1.maven.org/maven2/org/springframework/springloaded/1.2.8.RELEASE/springloaded-1.2.8.RELEASE.jar

 

2. 다운로드 받은 jar 파일을 적당한 위치에 이동

 

3. 톰캣 서버 - modules - edit - auto reloading enabled 체크 해제

 

4. server options 모두 체크 해제 + publishing - Automatically publish when resources change 선택

 

5. general information - open launch configuration 클릭 후 뜨는 팝업 창에서 arguments - vm arguments 맨 끝에 아래 코드 추가

-javaagent:[아까 다운로드 받은 jar 파일의 위치] -noverify

 

 

 

5번까지 완료 후 톰캣을 재부팅해주면 적용이 완료된다.

이제 controller나 dao 등의 java 파일을 수정해도 톰캣이 재부팅되지 않고 변경된 코드가 반영된다!