봄 부팅 효과를 취할 수있는 프로그램을 다시 시작해야합니다 정적 리소스를 수정? 아니!

뜨거운 배포를 불러 오기

뜨거운 배포 봄 부팅은 추가, 우리가 그것을 사용 믿습니다 spring-boot-devtools쉽게 핫 배포를 얻을 수 있습니다 의존하고 있습니다. 봄 부팅 열 배포 가장 중요한 원리는 두 개의 서로 다른 클래스 로더는 다음과 같습니다

  • 기본 클래스 로더
  • 다시 시작 클래스 로더

있는 그 클래스를로드하는 데 사용되는 기본 클래스 로더는 다양한 써드 파티 의존도로 변경되지 않는, 다시 시작 클래스 로더는, 예를 들어, 변경 자신의 코드를 작성하는 것 그 클래스를로드하는 데 사용됩니다. 봄 부팅 열 원리는 코드가 기본 클래스 로더 변경, 변경,하지만 다시 시작 클래스 로더는 또 다른 새로운 다시 시작 클래스 로더로 대체 파기 될 때 배포됩니다. 과정 전반에 걸쳐, 단지 클래스의 변화를 다시로드, 그래서 속도를 시작할 수 있기 때문에 신속하게 다시 시작해야합니다.

그러나 또 다른 문제는 정적 리소스 파일이 있습니다! 기본 정적 리소스 변경하고 프로젝트를 실행하지 않을 때 사용 DevTools로는, 사건을 다시 시작합니다. 하지만 우리는 구성을 통해이 문제를 해결하지만, 필요 없습니다! 정적 컴파일 된 리소스 파일이 변경되지 않기 때문에, 후자 틀림없이 저장된 새로 고침에 액세스 할 수 있습니다.

그래서 우리는 어떻게 자동으로 새로 고쳐집니다 컴파일되지, 정적 자원 변경을 달성 할 수있다? LiveReload은 우리가이 기능을 달성 할 수 있습니다!

LiveReload

DevTools로 기본 내장 LiveReload 서버는 핫 배포 리소스 변경, LiveReload가 크롬, 파이어 폭스와 사파리를 지원하는 경우 LiveReload 브라우저 업데이트가 자동으로 트리거 할 수 LiveReload 정적 파일을 달성 할 수 사용합니다. 예, 검색 LiveReload 크롬 크롬 앱 스토어에서, 결과는 다음과 같이 :

크롬에 대한 첫 번째 검색 결과를 추가, 성공적으로 추가 한 후, 오른쪽 상단 모서리에있는 크롬 아이콘은 LiveReload이있다

브라우저 프로젝트에서 페이지를 열고 브라우저 LiveReload 오픈 LiveReload 연결의 오른쪽 상단 모서리에있는 버튼을 클릭합니다.

참고 :

LiveReload 당신이 탭 페이지에 액세스 LiveReload 탭에서 열린 브라우저 탭과 함께 결합이다,이 유효합니다.

LiveReload를 연 후, 우리는 플러스 DevTools로 따라 봄 부트 프로젝트를 시작 :

<dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-devtools</artifactId>
    <scope>runtime</scope>
    <optional>true</optional>
</dependency>

이 경우 단지 자원 / 정적 디렉토리 정적 HTML 페이지를 추가하고 봄 부트 프로젝트를 시작 액세스 HTML 페이지는 LiveReload 탭을 열었습니다 .

성공적인 방문 후, 우리는 수정 브라우저로 성공 후 수동으로 아무것도하지 않는, 당신은 페이지가 업데이트되어, 새로 고침 자동으로 브라우저를 찾을 수 있습니다, HTML 페이지 코드를 수정로 이동합니다.

과정 전반에 걸쳐, 내 봄 부트 프로젝트가 다시 시작되지 않습니다.

개발자가 설치 LiveReload 플러그인을 시작뿐만 아니라 의존 DevTools로 추가하지만 정적 페이지의 변화, 당신은 application.properties에 다음 코드를 추가 할 수 있습니다 때 자동 새로 고침 브라우저를 원하지 않는 경우 구성 :

spring.devtools.livereload.enabled=false

모범 사례

그것을 사용하는 데 걸리는 시간보다 일반적으로 LiveReload에서 프로젝트를 다시 시작하는 데 시간이 걸리기 때문에 우리는 개발자가 동적 하중 정적 리소스를 달성하기 위해 프로젝트 전략을 다시 시작하는 대신 LiveReload 정책을 사용하는 것이 좋습니다.

파이어 폭스는 일단 LiveReload 플러그인을 설치 설치하고 크롬의 사용은 여기를 반복하지, 기본적으로 동일 할 수있다.

공공 우려 번호 한시 비 [남부, 문제는 자바가 자바 건조 송 창은 신중하게 준비를받은 후 답장을 공유하는 봄 부팅 + 마이크로 서비스와 전면 및 정기적으로 분리 전체 스택 기술, 비디오 자습서의 후단에 집중!

추천

출처www.cnblogs.com/lenve/p/11325041.html