스프링 부트 devtools - IntelliJ에서는 정적 콘텐츠 새로고침이 작동하지 않습니다.
첫 Spring Boot 앱을 만들 때 /resources/static/some-file.js에서 Javascript 파일을 변경할 때마다 앱을 재시작해야 한다는 것을 알게 되었습니다.
이것은 매우 시간이 걸립니다.
파일을 /webapps/폴더로 이동하면 예상대로 동작하지만 파일이 JAR에 패키지되어 있지 않습니다.의사 선생님들이 이런 말을 하니까 더 이상 이런 식으로 할 수 없어요.
에 대해서 다 읽었어요.spring-boot-devtools
POM에 설치했지만 핫스왑이 제대로 작동하지 않습니다.Javascript 파일 또는 CSS 파일 변경을 보려면 앱 전체를 재시작해야 합니다.
앱이 시작되면 선이 보인다.LiveReload server is running on port 35729
,그렇게spring-boot-devtools
뭔가 하고 있는 게 틀림없어
무엇이 잘못되었는지 더 자세히 조사하려면 어떻게 해야 합니까?
IntelliJ가 앱을 실행하면 파일이 복사되기 때문에 변경할 때 실제로 실행 중인 앱이 아닌 원본 파일을 변경합니다.
PS: 임베디드 Tomcat 서버에서 Maven, IntelliJ IDEA 15 및 Spring Boot 1.3을 사용하고 있습니다.IntelliJ가 앱을 시작하기 위해 어떤 명령을 실행하는지 잘 모르겠습니다.IDE가 이것을 「자동」으로 처리하고 있다.실행 구성을 변경해야 할 수도 있습니다.
이것을 실행하려면 , 인텔리J 의 몇개의 기능을 유효하게 할 필요가 있습니다.
먼저 devtools를 사용하는 모든 프로젝트에 적용해야 하는 프로젝트별 설정이 있습니다.[ Preferences ]> [ Compiler ]으로 이동하여 [Make project automatically]를 유효하게 합니다.
다음 설정은 모든 프로젝트에 적용되는 IDEA 레지스트리 설정입니다.
- macOS(OSX)에서 를 누릅니다.
Shift+Command+A
(Shift+Ctrl+A
Windows 의 경우) - 표시되는 검색 상자에 「Registry」라고 입력하고, 레지스트리를 선택해 엽니다.
- 조회 컴파일러오토메이크allow.when.app.running을 실행하여 활성화합니다.
그런 다음 앱을 다시 시작합니다.변경할 때마다 프로젝트가 계속 재구축됩니다.브라우저에서 결과를 확인하면 정적 파일과 코드가 모두 업데이트되었음을 확인할 수 있습니다.
Windows 유저의 순서는 다음과 같습니다.
1) [파일]-> [설정]- [빌드], [실행], [전개]-> [컴파일러]순서로 이동하여 [프로젝트 자동 작성]플래그를 유효하게 합니다.
를 누르고 에서 [를 선택합니다.2) Ctrl-Alt-Shift-/는 레지스트리(Registry)를 선택합니다운전when flagallow 를 합니다.when.app.running 을 실행합니다.
을 기동새로고침을 합니다.3) 아/아/아/아/아/아/아/아/아/아/아/아/아/아/아/아/아니다.
IntelliJ 2021.2 버전 이후에서는 다음 절차를 따라야 합니다.
아직 추가되지 않은 경우 spring-boot-devtools 종속성을 추가합니다.
아래 그림과 같이 자동으로 빌드 프로젝트 활성화
- 다음과 같이 [상세설정]에서 옵션을 유효하게 합니다.
Linux 의 경우는, 다음을 누릅니다.
Ctrl-Alt-Shift-/
Mac 사용자의 경우 + +를 눌러야 했습니다.
또한 레지스트리 옵션이 표시되지 않는 스텝1과 스텝2 후에 INTELLIJ를 재기동합니다.
다음과 같이 사용할 수 있습니다.
- 처음 열기 기본 설정.../설정...-> 빌드, 실행, 전개 -> 컴파일러 및 빌드 프로젝트를 자동으로 허용합니다.이미지는 다음과 같습니다.
- 다음으로 레지스트리 설정을 변경합니다.command+shift를 누릅니다.+A(MacOS용) 또는 Windows를 사용하는 경우 Ctrl+Shift+A를 누르고 레지스트리를 검색합니다.컴파일러를 유효하게 합니다.오토메이크allow.when.app.running 입니다.이미지가 아래처럼 보입니다.
레지스트리 이미지는 다음과 같습니다.
컴파일러.오토메이크allow.when.app.running enable 이미지는 다음과 같습니다.
그럼 즐기세요.
옵션이 [Advanced settings](상세설정)으로 변경되었습니다.
언급URL : https://stackoverflow.com/questions/35895730/spring-boot-devtools-static-content-reloading-does-not-work-in-intellij
'programing' 카테고리의 다른 글
SQL 쿼리: 관련된 두 테이블 간에 누락된 행을 찾습니다. (0) | 2023.03.23 |
---|---|
회전 슬라이더 모바일 배경 이미지 변경 (0) | 2023.03.23 |
mongodb/mongoose find Many - 배열에 나열된 ID를 가진 모든 문서를 찾습니다. (0) | 2023.03.18 |
ASP.Net MVC Ajax 폼과 jQuery 검증 (0) | 2023.03.18 |
MongoDB mongore store 및 레코드가 있는 기존 컬렉션 (0) | 2023.03.18 |