开发过程中,一边写代码一边调试,如果项目没有设置热部署功能,则每次需要对项目重启,这样过于麻烦和浪费时间,在各编辑器上都是带有自动编译的功能,下面看一下常用的开发工具 IDEA 是如何设置的,Eclipse 也会说到,相对于两种编辑器,Eclipse 配置会简单很多。
1. 引入 SpringBoot 热部署组件
引入依赖spring-boot-devtools
,版本继承 spring-boot 的版本。
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-devtools</artifactId>
</dependency>
组件引入后,需要在 pom.xml 文件中配置相关插件。
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
<configuration>
<fork>true</fork>
</configuration>
</plugin>
如果在项目中使用到 thymeleaf 模板,那么就需要在 application.properties 文件中配置 thymeleaf 模板缓存机制为 false。
spring.thymeleaf.cache=false
2. IDEA 相关设置
第一步:找到 IDEA 的 Settings,找到 Build,Execution,Deployment 下的 Compiler,然后将 Build project automatically 选项选中。
第一步完成后如果不需要每次保存自动编译,就使用手动的方式编译,快捷键是:ctrl+shift+f9
,反之则需要以下步骤配置。
使用快捷键ctrl+shift+alt+/
会弹出一个窗口,点击registry
,在里面找到compiler.automake.allow.when.app.running
,勾线这个选项即可。
这是实际是采用了两种方式,一种是手动模式,一种是自动模式。在使用自动模式时,需要保存后才会编译(注意点),反之是不会。
综合两种方式,一般采用手动的比较多。为什么呢?因为在写代码的时候,不可能写一行编译一次,这样编译太频繁,而且没有意义(在实际开发过程中肯定是写完一段逻辑后才会去调试一次)。所以需要重新编译调试的时候再去编译是比较好的选择,也是比较合理的做法。
3. Eclipse 的操作
如果使用的是 Eclipse 那就没有 IDEA 相关设置的过程,引入依赖,做好配置文件修改即可。