spring boot2.0一看就会的超详细快速入门(五)-开发人员工具devtools
spring-boot-devtools
模块可以包含在任何项目中,使应用程序开发更加方便
maven repository:
<dependencies>
<dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-devtools</artifactId> <optional>true</optional> </dependency> </dependencies>
选项说明:optional值为true时,依赖不会传递,避免该引用传递到其他模块
功能说明:
1.自动重启
每当类路径上的文件有改动时,将自动重启IDE中的应用程序,但默认状态下,静态资源和视图模型不会触发重启功能。
接下来我们作自动重启对比,一张初始启动,另一张有改动将自动触发自启功能,如图:
通过对比我们可以发现输出提示中最后一条有明显的区别,这表示已触发自动重启功能
2.默认情况下不会触发自动重启的路径或资源如下:/META-INF/maven
,/META-INF/resources
,/resources
,/static
,/public
,/templates
如果要自定义这些排除项,可以使用spring.devtools.restart.exclude
属性。例如,要仅排除/static
,/public
您将设置以下属性:
spring.devtools.restart.exclude=static/**,public/**
如果要保留这些默认值并添加其他排除项,请改用该 spring.devtools.restart.additional-exclude
属性
通过操作对比,发现当我们在项目中resources目录下创建static文件夹,并在static文件夹中创建css文件夹,在css文件夹中创建demo.css文件,并添加内容保存并不会触发自动重启功能。
但我们在sources目录下创建application.properties配置文件,并在配置文件中重新设置属性之后,demo.css修改也可以自动重启,如图:
3.支持远程应用程序管理:
远程运行应用程序时,还可以使用多个功能,远程支持是选择加入,要启用它,您需要确保它devtools
包含在重新打包的存档中,配置如下:
<build>
<plugins>
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
<configuration>
<excludeDevtools>false</excludeDevtools>
</configuration>
</plugin>
</plugins>
</build>
接下来,需要设置spring.devtools.remote.secret
属性,如以下示例所示:
spring.devtools.remote.secret = mysecret
特别注意:
spring-boot-devtools
在远程应用程序上启用存在安全风险。强烈建议不要在生产环境上启用支持。