SpringBoot2.x使用Dev-tool热部署(IDEA)

热部署,使用springboot结合dev-tool工具,快速加载启动应用,无需每次修改代码都手动重启应用

第一步:官方地址:https://docs.spring.io/spring-boot/docs/2.1.0.BUILD-SNAPSHOT/reference/htmlsingle/#using-boot-devtools
    核心依赖包:

  
   org.springframework.boot  
        spring-boot-devtools  
   true  

   添加依赖后,在ide里面的后续修改并保存文件后(应用会自动重启,无需每次都Run as)马上可以生效

第二步:第一步完成修改代码并保存,热部署无效(应用无法自动重启),出现这种情况,并不是你的问题,是IDEA和DevTools和Loader的配置问题,Intellij IEDA和Eclipse不同,Eclipse一般设置了自动编译,而IDEA需要自己打开。

注意:Intellij IDEA使用spring-boot-devTools热部署无效解决方案:https://blog.csdn.net/moshowgame/article/details/81129860

https://blog.csdn.net/Seven71111/article/details/105397285/

第三步:但是每次修改保存代码,不想每次都重启应用。可以通过手工修改trigger.txt文件的version的值进行触发重启应用

   在application.properties文件中添加手工触发重启文件:spring.devtools.restart.trigger-file=trigger.txt;并在同级目录下添加trigger.txt文件,内容为version=1

   SpringBoot2.x使用Dev-tool热部署(IDEA)_第1张图片

SpringBoot2.x使用Dev-tool热部署(IDEA)_第2张图片

 

###

不被热部署的文件
         1、/META-INF/maven, /META-INF/resources, /resources, /static, /public, or /templates
         2、指定文件不进行热部署 spring.devtools.restart.exclude=static/**,public/**
         3、手工触发重启 spring.devtools.restart.trigger-file=trigger.txt
             改代码不重启,通过修改trigger.txt文本的内容去控制(去触发重启应用)

         https://docs.spring.io/spring-boot/docs/2.1.0.BUILD-SNAPSHOT/reference/htmlsingle/#using-boot-devtools-restart-exclude

     注意点:生产环境不要开启这个功能,如果用java -jar启动,springBoot是不会进行热部署的
 

你可能感兴趣的:(SpringBoot,Dev-tool热部署)