如何配置SpringBoot开发环境的热部署,针对这个问题,本文详细介绍了相应的分析和解答,希望能帮助更多想要解决这个问题的小伙伴找到更简单更容易的方法。
在实际的项目开发中,当我们修改一个java类文件时,我们需要手动重新编译,然后重新启动程序。整个过程比较麻烦,尤其是项目启动慢的时候,影响开发效率。事实上,当Spring Boot的项目遇到这种情况时,也需要经历重新编译和重启程序的过程。只有Spring Boot提供了spring-boot-devtools模块,使得Spring Boot应用支持热部署,无需手动重启Spring Boot应用,从而提高了开发者的开发效率。接下来,谈谈Spring Boot发展环境的热点部署。
一、原理
devtools使用两个ClassLoader。
一个是基类加载器,它加载不会改变的类,比如第三方Jar包。
另一个是重启类加载器,负责加载正在开发的变化类。这样,当发生代码更改时,由于只加载了正在开发的Class类,而没有重新加载第三方jar包,因此实现了更快的重启时间。
Dev监视类路径下的文件更改(在保存时发生),并将立即重新启动应用程序。从而实现类文件和属性文件的热部署。
二、快速配置
1.pom配置
介绍开发工具的依赖性
dependencyGroupidorg . spring framework . boot/Groupidartifactidspring-boot-devtools/artifactId!- optional=true,不会传递依赖关系,这个项目依赖于devtools之后,依赖于引导项目的项目需要重新引入-optional trace/optional/dependency,如果它们想使用devtools的话。
注意:optional=true,依赖关系不会被传递,这个项目依赖于devtools之后,如果想要使用devtools,需要重新引入依赖于引导项目的项目。
2.应用程序.属性配置
在application.properties中配置devtools
#关闭缓存并立即刷新#spring .百里香叶. cache=false#热部署生效spring . devtools . restart . enabled=true #设置重新启动的目录spring . devtools . restart . additional-path=src/main/Java #对类路径目录中WEB-INF文件夹内容的修改不会重新启动spring . devtools . restart . exclude=WEB-INF/* *
描述:
Devtools可以实现页面热部署,即页面修改后立即生效,需要在application.properties文件中配置spring .百里香叶. cache=false。
Devtools将监听类路径下的文件更改,并将立即重新启动应用程序。
3.IDEA配置
如果idea是新安装的或者之前没有配置过,发现变更代码项目热部署不成功。当我们修改Java类时,IDEA默认情况下不会自动编译,spring-boot-devtools会在重新启动应用程序之前监控类路径下文件的变化。
因此,您需要设置IDEA的自动编译:
(1)文件-设置-编译器-自动构建项目
(2)按住ctrl键并按住alt键,选择注册表,然后选中应用程序运行时编译器自动生成允许。
这样就可以使用devtools实现热部署。
以上,我们已经介绍完了如何配置Spring Boot开发环境热部署。还是比较简单的。我们自己研究吧。
关于如何配置SpringBoot开发环境的热部署的问题的答案将在这里分享。希望
内容来源网络,如有侵权,联系删除,本文地址:https://www.230890.com/zhan/102829.html