1. 다시 시작해야합니다
현재 SpringBoot에서 수정이 발생한 후에는 응용 프로그램 클래스를 시작하기 전에 발효되기 전에 닫아야합니다. 이는 약간 번거로운 것 같습니다. SpringBoot는 핫 배포 방법을 제공합니다. 클래스가 변경된 것으로 밝혀지면 최신 클래스는 JVM 클래스로드 방법을 통해 즉시 가상 시스템에로드됩니다. 이렇게하면 다시 시작하지 않고 수정 된 효과를 볼 수 있습니다.
2. pom.xml
이 방법은 매우 간단합니다. pom.xml에 새로운 종속성을 추가하십시오.
<pectionency> <groupid> org.springframework.boot </groupid> <artifactid> spring-boot devtools </artifactid> <seleptal> true </옵션> <!-효과적인 핫 배포가 효과적이기 위해서는 진정한 핫 배포가 필요합니다-> </dependency> <xml version = "1.0"utf-8 "?> <utf-8"?> xmlns = "http://maven.apache.org/pom/4.0.0"xmlns : xsi = "http://www.w3.org/2001/xmlschema-instance"xsi : schemalocation = "http://maven.apache.org/pom/0.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd "> <modelversion> 4.0.0 </modelversion> <groupid> com.how2java </groupid> <artifactid> springboot </artifactid> <springs> 0.1-snapshot> <springboot> springboot> <Packaging> War </packaging> <부모 >> <groupId> org.springframework.springframework.boot </groupid> <artifactid> Spring-boot-starter-parent </artifactid> <bersion> 1.5.9.release </version> </parent> </parent> <groupid> <groupid> org.springframework.boot <artifactid> Spring-Boot-starter-web </artifactid> </fectionency> <pectient> <groupid> org.springframework.boot </groupid> <trifactid> spring-boot-starter-tomcat </artifactid> </scope> </scope> <pelection> <groupid> <artifactid> junit </artifactid> <bersion> 3.8.1 </version> <cope> test </scope> </fectionency> <!- 서블릿 종속성. -> <pectionency> <groupId> javax.servlet </groupId> <artifactid> javax.servlet-api </artifactid> <cope> 제공 </scope> </fectionency> <prectionency> <groupID> javax.servlet </groupid> <artifactid> jstl </arevactl> </dreponcency for support> </forplency for support>. <groupid> org.apache.tomcat.embed </groupid> <artifactid> tomcat-embed-jasper </artifactid> <scope> 제공 </scope> </fectionency> <pectionement> <groupId> org.sprameframeword.boot </groupIcD> <ArtifactID> 옵션> 옵션> <!-이것은 효과적인 핫 배포가 효과적이어야합니다-> </dependency> </fectencies> <java.version> 1.8 </java.version> </properties> <build> <flugin> <grupin> <groupId> org.spramework.spramwork.spramwork.spramwork.spramewort> </artifactin> </플러그인> </빌드> </project>
3. 테스트를 다시 시작하십시오
애플리케이션을 다시 시작한 다음 HelloController를 자연스럽게 수정하면 그림과 같이 콘솔의 자동 재시작이 관찰됩니다.
다시 채우다:
SpringBoot의 자동 재시작 및 핫 스타트를 살펴 보겠습니다.
SpringBoot를 자동으로 다시 시작하는 두 가지 방법 :
1) 다음과 같이 프로젝트의 POM에 직접 플러그인을 추가하십시오.
<빌드> <플러그인> <GroupIn> org.springframework.boot </groupId> <artifactid> spring-boot-maven-plugin </artifactid> <pectients> <!-핫 배포-> <groupid> org.springframework </groupid> Springloaded </artifactid> <버전> 1.2.6. Release </version> </fectionency> </fectencies> </plugin> </plugins> </build>
ClassPath의 파일 작업 (Javadiamante 및 기타 구성 파일 포함)이 저장되면 프로젝트가 자동으로 다시 시작되어 프로젝트를 수동으로 다시 시작하는 데 문제가 발생하지 않습니다.
2) SpringBoot에서 제공 한 도구 클래스를 사용하여 POM에 종속성을 추가하십시오.
<의존성> <!-SpringBoot 개발 도구-> <pectionency> <groupId> org.springframework.boot </groupid> <artifactid> spring-boot-devtools </artifactid> </dependency> </dependency> </dependency>
DevTools는 SpringBoot에서 제공하는 개발 도구입니다. 개발자 도구를 활성화 한 후 클래스 경로의 파일에서의 모든 작업은 응용 프로그램이 다시 시작되도록 트리거됩니다. SpringBoot Developer Tools는 /Meta-Inf /Resources, /Resources, /static, /public 및 /템플릿을 다시 시작할 때 제외합니다. spring.devtools.restart.exclude 속성은 기본 재시작 제외 디렉토리를 무시하도록 설정할 수 있습니다.
자동 재시작을 끄려면 Spring.devTools.RestArt.enable =이 방식으로 표시된대로 설정할 수 있습니다. 트리거 파일은 Spring.devTools.Restart.Trigger-File 속성의 재시작을 트리거하려면 수정되어야합니다. 응용 프로그램이 완전히 포장 된 JAR 또는 전쟁 파일로 실행될 때 개발자 도구가 비활성화됩니다. 개발자 도구를 활성화 한 후 Spring Boot는 임베디드 리버로드 서버를 시작하여 리소스 파일이 변경 될 때 브라우저를 새로 고칠 것입니다. 브라우저에 LiverEload를 설치하기 만하면됩니다. 임베디드 브라우저 스프링을 제외하려면 spring.devtools.livereload.enableled = false;
요약
위는 편집기가 소개 한 SpringBoot를 자동으로 다시 시작하는 간단한 방법입니다. 나는 그것이 당신에게 도움이되기를 바랍니다. 궁금한 점이 있으면 메시지를 남겨 주시면 편집자가 제 시간에 답장을 드리겠습니다. Wulin.com 웹 사이트를 지원해 주셔서 대단히 감사합니다!