方法一:
<!--热部署: optional=true,依赖不会传递,该项目依赖devtools;之后依赖myboot项目的项目如果想要使用devtools,需要重新引入 -->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-devtools</artifactId>
<optional>true</optional>
</dependency>
<plugins>
<!-- 这是spring boot devtool plugin -->
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin </artifactId>
<configuration>
<!-- fork:如果没有改设置,应用不会restart -->
<fork>true</fork>
</configuration>
</plugin>
</plugins>
提醒:devtools可以实现热部署,例如在使用spring.thymeleaf框架时,在application.properties文件中配置:
spring.thymeleaf.cache=false来实现
假如出现不能实现热编译可能的问题是:
1. 对应的spring-boot版本是否正确,例如我使用的一个版本时1.4.1版本,时可以的。
2. 是否加入plugin以及属性<fork>true</fork>
3. Eclipse Projedt是否开启了Build Automatically,没有开启无法自动编译
4. 如果设置了SpringApplication.setRegisterShutDownHook(false),则无法完成重启
网友评论