spring boot(20)-开发工具devtools

时间:2022-08-26 17:56:42

pom.xml

[html] view plain copy
  1. <dependency>  
  2.     <groupId>org.springframework.boot</groupId>  
  3.     <artifactId>spring-boot-devtools</artifactId>  
  4. </dependency>  

修改代码自动重启

spring boot(20)-开发工具devtools

只要引入了开头的依赖,自动重启就生效。如上图,在开发时修改代码,会重载java代码,而不会重载依赖jar,这可以大大减少开发重启的时间。然而有一些大型项目,代码量多,业务复杂,自动重启仍然要花很长时间。这时,如果你的项目划分了多个模块,可以将其他模块代码打成jar包,部署到maven私服,此时自动重启,你只需要重载你所开发的模块代码。也就是说,原本可能需要多少分钟才能自动重启的整个项目,可以降到秒级别,极大的提高了开发维护效率。多模块和maven私服的实现可以参考我的maven专题 

注意:

1.修改pom.xml的依赖,也算是修改代码,也会重启,但不会重载你修改的依赖jar

2.修改前端代码不会触发重启

手动触发重启

通常修改代码是连续性的修改,并不需要每改一点就重启一次,在properties进行配置可以关闭自动重启,实现手动重启

[plain] view plain copy
  1. spring.devtools.restart.trigger-file=trigger.txt  

spring boot(20)-开发工具devtools

trigger.txt是我自创的一个文件,没有内容

spring boot(20)-开发工具devtools
此时,修改一处代码不会重启,等全部代码都修改完成后再修改trigger.txt文件,就可以触发重启。如果没有修改过代码,只修改trigger.txt,不会重启

排除部署

14篇我讲了用spring-boot-maven-plugin插件生成可执行项目文件,用这个插件打包项目时,默认会将开发工具的jar包排除,也就是在生成的可执行jar文件中,默认不包含开发工具