美文网首页
SpringBoot热部署

SpringBoot热部署

作者: yexue | 来源:发表于2018-03-08 16:29 被阅读322次
    项目地址:https://github.com/yexuebm/utils
    同步博客地址:http://blog.yexuejc.top/article/5

    SpringBoot热部署

    利用SpringBoot为我们提供了一个非常方便的工具spring-boot-devtools

    pom.xml

        <dependency>  
           <groupId>org.springframework.boot</groupId>  
           <artifactId>spring-boot-devtools</artifactId>  
           <optional>true</optional><!-- optional=true,依赖不会传递,该项目依赖devtools;之后依赖myboot项目的项目如果想要使用devtools,需要重新引入 -->  
       </dependency>
    

    重新编译类文件

    <p>当我们修改了一个java类的时候,我们只需要重新编译一下,SpringBoot的就会重启了。
    因为devtools会监听classpath下的文件变动,所以当java类重新编译的时候,devtools会监听到这个变化,
    然后就会重新启动SpringBoot。
    这个重启是非常快的一个过程。因为在SpringBoot中有两个类加载器,一个是加载工程外部资源的,如jar包,
    还有一个类加载器是用来加载本工程的class的。所以在重启SpringBoot的时候只加载本工程的class文件。
    </p>

    监听文件夹的变化

    让devtools监听文件夹的变化,不重新编译java类的。
    比如我们想让main下的文件改变的时候,springboot重新启动

    配置 application.properties

    // util-simple从项目开始 加“/”绝对路径
    spring.devtools.restart.additional-paths=util-simple/src/main
    

    页面热部署

    使用thymeleaf模板时,devtools可以实现页面热部署,即页面修改后会立即生效。

    配置 application.properties

    spring.thymeleaf.cache=false
    

    相关文章

      网友评论

          本文标题:SpringBoot热部署

          本文链接:https://www.haomeiwen.com/subject/oqpyfftx.html