在开发中我们经常因为修改一个Java文件后想看到修改后的效果而不得不重启应用,这导致大量时间花费在项目的重启和部署上。因此我们希望程序不需要重启并可以自动进行部署,也就是我们说的热部署。以下总结了四种在SpringBoot项目中实现热部署的方式。
模板引擎
在SpringBoot开发情况下禁用模板引擎的cache,页面模板改变后使用Ctrl+F9快捷键可以重新编译当前页面并生效。
Spring Loaded
Spring官方提供的热部署程序,实现修改类文件的热部署。
- 下载Spring Loaded(项目地址https://github.com/spring-projects/spring-loaded)。
- 添加运行时参数。
-javaagent:C:/Springloaded-1.2.5.RELEASE.jar -noverify
JRebel
JRebel是一个收费的热部署软件,只需安装插件使用即可。
SpringBoot Devtools(推荐)
1.引入依赖。
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-devtools</artifactId>
</dependency>
2.IDEA使用Ctrl+F9快捷键或者做一些小调整。Intellij IDEA和Eclipse不同,Eclipse设置了自动编译之后,修改类它会自动编译,而IDEA在非RUN或DEBUG情况下才会自动编译(前提是已经设置了Auto-Compile)。
- 设置自动编译(settings-compiler-make project automatically)。
- Ctrl+Shift+Alt+/(maintenance)。
- 勾选compile.automake.allow.when.app.running。