My Environment
- IDEA2018.3
- JDK1.8
- SpringBoot2.3.0
- 360浏览器
-
Springboot提供了热部署的方式,当发现有任何类发生了改变,马上通过JVM类加载的方式,加载最新的类到虚拟机中。 这样就不必重启也能看到改动后的效果了,只需在浏览器刷新页面即可更新显示内容,不需要再重启整个项目工程,提高了开发效率。
-
如果前端使用了thymeleaf,那么在properties或yml中配置关闭thymeleaf缓存:
spring.thymeleaf.cache=false
- 如果修改的只是页面会自动刷新,如果是java类文件需要手动点击工具栏的
build–>Build->Modules ‘myProject’. - Springboot版本也有可能导致热部署配置失败
1. pom.xml
在pom文件中,引入如下依赖:
<!--热部署插件-->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-devtools</artifactId>
<scope>runtime</scope>
</dependency>
后,在插件中配置按如下配置:
<build>
<plugins>
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
<configuration>
<!--fork : 必须配置,否则热部署不会生效,应用不会重置 -->
<fork>true</fork>
<addResources>true</addResources>
</configuration>
</plugin>
</plugins>
</build>
或者直接在依赖中配置:
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-devtools</artifactId>
<optional>true</optional> <!--true时热部署生效 -->
</dependency>
打开maven仓库查看配置和依赖是否引入完成。
2. IDEA中配置
File中Settings
打开顶部工具栏 File -> Settings -> Default Settings -> Build -> Compiler 然后勾选 Build project automatically 如下图所示:
后点击Help中的Find Action —>(Ctrl + Shift + A)
后在搜索栏中输入Registry查找:
点击确定后,勾选 Compiler autoMake allow when app running后保存设置:
3. 浏览器中配置
打开浏览器按Fn + F12进入审查元素,选择Network后勾选【✅】Disable cache :
确保以上均已完成配置,那么===================================================
项目热部署配置完成,重新编译启动工程修改IDEA工程代码后刷新浏览器,不用再重新启动工程了!
END