在开发过程中,往往希望修改任何文件,不用重启项目就能访问,此处设置的是idea工具的热部署。
第一步,“File” -> “Settings” -> “Build,Execution,Deplyment” -> “Compiler”,选中打勾 “Build project automatically” 。
第二步,组合键:“Shift+Ctrl+Alt+/” ,选择 “Registry” ,选中打勾 “compiler.automake.allow.when.app.running”
第三步,在项目中加入如下依赖:
第四步,修改spring-boot插件设置,如下:
第五步,重启idea(有时候不重启也可以),debug运行项目,启动成功后,任意修改一个方法的代码,然后就可以看到控制台输出了重新编译的日志。此时修改Java代码,可以不用再重启了。
第六步,对视图页面的热修改,先在配置文件中增加一个配置,如下:
spring.thymeleaf.cache=false
修改页面,刷新链接,可以看到浏览器也随之修改了,
第七步,热修改xml的SQL文件,先写一个xml查询,
可以看到所有的代码和流程,现在修改SQL语句,其它不修改,
可以看到,控制器也打印了重新编译的日志,再次访问页面,发现结果有变化:
此时,项目的热部署功能基本完成。
注意,在idea中,有时候会出现重新编译迟缓或失败的情况,基本上重启可以调整过来。有时候可以手动重新编译,比如Java代码,右键点击代码区域,选择Recompile 类名,如图:
可以看到,在不修改代码的情况下,控制台也打印出了重新编译的日志。html文件也可以,如下:
xml文件如下:
如果自动不好用,可以采取手动,比重启快。
以上操作和设置可以实现在idea中springboot热部署的效果。