在开发过程中,当写完一个功能我们需要运行应用程序测试,可能这个小功能中存在多个小bug,我们需要改正后重启服务器,这无形之中拖慢了开发的速度增加了开发时间,SpringBoot提供了spring-boot-devtools,使我们在更改应用和配置文件的时候,自动重启应用!

打开pom.xml文件添加依赖

<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-devtools</artifactId>
<optional>true</optional>
</dependency>

只要classpath下的文件有变动,它就会自动重启。这在使用IDE时非常有用,因为可以很快得到代码改变的反馈。默认情况下,classpath下任何指向文件夹的实体都会被监控,注意一些资源的修改比如静态assets,视图模板不需要重启应用。
        由于DevTools监控classpath下的资源,所以唯一触发重启的方式就是更新classpath。在Eclipse里,保存一个修改的文件将引起classpath更新,并触发重启。在IntelliJ IDEA中,默认是不自动编译的,我们需要设置自动编译。

设置IDEA自动编译:

(1).快捷键Ctrl+Alt+S打开设置,在Build,Execotion,Deployment->Compiler->勾选Build Project automatically项

 
 

(2).快捷键Ctrl + Shift + Alt + /,选择Registry

 
 

(3).勾选 Compiler autoMake allow when app running

 
 

重启应用,当改动代码时,观察控制台输出,你会发现Spring Boot已经检测到了文件变化,并重新启动,你会发现体验为何如此之棒,爽极了!

SpringBoot 热启动的更多相关文章

  1. springboot热启动中那些不为人知的东东

    在springboot热启动中,大家都知道在pom文件中配置devtools,但是当这个服务特别大,或者引入的包特别多的时候,重启一下就特别慢,如果开发的PC的内存和cpu如果不给里的h话,系统就卡主 ...

  2. webjars和springboot热启动

    webjars WebJars将Web前端Javascript和CSS等资源打包成Java的Jar包, 以便能使Maven的依赖管理支持静态JavaScript库/CSS库,比如jQuery.layu ...

  3. Intellij IDEA 2018.2.2 SpringBoot热启动 (Maven)

    一.IDEA 工具配置 1. 打开IDEA 设置界面,选择编译,按图打勾. 2 . 然后 Shift+Ctrl+Alt+/,选择Registry 3 . compiler.automake.allow ...

  4. SpringBoot热启动让开发更便捷

    在开发过程中,当写完一个功能我们需要运行应用程序测试,可能这个小功能中存在多个小bug,我们需要改正后重启服务器,这无形之中拖慢了开发的速度增加了开发时间,SpringBoot提供了spring-bo ...

  5. SpringBoot MVC 拦截器

    SpringBoot MVC 环境搭建 在pom.xml添加spring-boot-starter-web   <dependency>   <groupId>org.spri ...

  6. springboot基础、注解等

    SpringBoot 1.springboot概念 Spring Boot是用来简化新Spring应用的初始搭建以及开发过程.该框架使用了特定的方式来进行配置,从而使开发人员不再需要定义样板化的配置. ...

  7. SpringBoot 2.0 pom.xml 配置(热启动)

    <?xml version="1.0" encoding="UTF-8"?><project xmlns="http://maven ...

  8. SpringBoot 配置相关热启动

    SpringBoot 配置相关热启动 参考网址1 参考网址2

  9. SpringBoot dev-tools vjtools dozer热启动类加载器不相同问题

    最近使用唯品会的vjtools的BeanMapper进行对象的深度克隆转换DTO/VO这种操作,Spring Boot的dev-tools热启动,需要把vjtools和dozer包都放到spring- ...

随机推荐

  1. VS2015 无法启动 IIS服务器

    打开VS2012解决方案资源管理器 -> 点选 Web 项目选择 -> 属性 -> Web ->创建虚拟目录. 再次运行Web项目,成功.

  2. Linux7.3系统 升级python到3.6使用ping主机脚本

    Linux7.3默认的python系统是2.7.5,然后想着升级使用python3.6.6 1 下载 2 解压  tar fx Python-3.6.6.tgz 3  configure --pref ...

  3. 获取get请求后面的参数

    var str = "www.baidu.com?id=1&name=zhangsan"; var data = str.split("?"); con ...

  4. python学习笔记_week5_模块

    模块 一.定义: 模块:用来从逻辑上组织python代码(变量,函数,类,逻辑:实现一个功能), 本质就是.py结尾的python文件(文件名:test.py,对应模块名:test) 包:用来从逻辑上 ...

  5. Maven下载私服上的jar包

    1.配置M2_HOME/conf/settions.xml <server> <id>maven-public</id> <username>admin ...

  6. MySQL把文件导入表中

    1. Mysql 把本地文件导入表中 drop table if exists wufangzhai_caigou_group; create table wufangzhai_caigou_grou ...

  7. 12. ajax、datagrid请求传参实例

    ############实例1:############ var data = {};data.orgRoleCode = orgRoleCode;data.orgRoleName = orgRole ...

  8. IIS快捷方式

    一般打开IIS管理器的方式 都是 计算机->管理->服务应用程序->Internet应用程序管理器 这样一步就可以 打开IIS了

  9. mui集成百度ECharts的统计图表以及清空释放图表

    echarts官网地址: http://echarts.baidu.com/index.html 更换主题颜色: // 图表清空------------------- mychart.clear(); ...

  10. suse 奇怪的crash 问题

    最近遇到一个suse的crash 问题: 我没有使用 mkswap /dev/磁盘路径 来制作swap分区,我有很多剩余内存,我设置nr_swapfiles为0,可是我还是遇到了关于swap的cras ...