概念

热部署就是正在运行状态的应用,修改了他的源码之后,在不重新启动的情况下能够自动把增量内容编译并部署到服务器上,使得修改立即生效。热部署为了解决的问题有两个:

1、在开发的时候,修改代码后不需要重启应用就能看到效果,大大提升开发效率;

2、生产上运行的程序,可以在不停止运行的情况下进行升级,不影响用户使用。

IDEA 开启热部署

本篇文章主要是介绍Idea这款开发工具的热部署,而用Idea的人大多数都是用来开发java程序,当前流行的java程序主要有两种,第一种是传统的Web应用,依赖Tomcat这种web容器运行;第二种是Spring boot程序, 内嵌了运行环境。

1、Tomcat热部署

a) 在顶部找到程序运行操作栏, 点击Edit Configurations

b) 点击你要配置的tomcat,点击deployment,点击”+“

c) 然后选择你要部署的war包,热部署必须要选择带有exploded的war包

d) 再切换回Server,按照下图标注配置

配置完后点击ok即可启动你的tomcat,然后改一下jsp、java文件实验热部署配置是否成功。

最后提示一下,Idea热部署并非绝对实时, 还是会有延时的,假如你手速快的话可能会出现改了并没有马上生效。所以此时不要怀疑热部署没有配置成功,稍微等一会你会看到开发工具左下角会有一个class reload的提示,出现这个提示才说明已经热部署完成了。

当然, 如果你想马上生效的话,可以点击下图标标注的按钮,或者使用快捷键Ctrl + F10

2、Spring boot程序热部署

a) 在顶部找到程序运行操作栏, 点击Edit Configurations,点击要配置的程序,按照下图标注地方配置

配置完后点击ok即可启动你的程序,java文件实验热部署配置是否成功。

但配置到这里只是会使java文件和其他静态资源热部署成功,但如果您的Spring boot程序是web程序,并且有jsp或Thymeleaf等页面模板引擎,则还需要在Spring boot的配置文件中配置。

如果是jsp, 在application.yml文件下加入配置

如果是Thymeleaf, 则在application.yml文件加入配置:

spring:thymeleaf:cache: false

Spring boot程序除了通过上述步奏实现热部署,还可以通过给程序添加spring-boot-devtools依赖实现。

<!-- 热部署 --> <dependency>     <groupId>org.springframework.boot</groupId>     <artifactId>spring-boot-devtools</artifactId>     <version>2.0.4.RELEASE</version>     <!-- 启用 -->     <optional>true</optional> </dependency>

其他配置

如果你通过上面的步骤还没实现想要的热部署效果,可以继续做以下两个配置。

1、开启Java Compiler的自动build

2、按住ctrl + shift +alt + / 选择Registry,按照下图标注配置

来源:https://blog.csdn.net/qq_16148137/article/details/99694566

关注微信公众号:互联网架构师,在后台回复:2T,可以获取我整理的教程,都是干货。

猜你喜欢

1、GitHub 标星 3.2w!史上最全技术人员面试手册!FackBoo发起和总结

2、如何才能成为优秀的架构师?

3、从零开始搭建创业公司后台技术栈

4、程序员一般可以从什么平台接私活?

5、37岁程序员被裁,120天没找到工作,无奈去小公司,结果懵了...

6、滴滴业务中台构建实践,首次曝光

7、不认命,从10年流水线工人,到谷歌上班的程序媛,一位湖南妹子的励志故事

8、15张图看懂瞎忙和高效的区别

9、2T架构师学习资料干货分享

全网最全的IDEA热部署方案,看完弄懂,再也不用加班了~相关推荐

  1. idea 查看jsp是否被引用_全网最全的IDEA热部署方案,看完再也不用加班了!

    传智播客博学谷 加小谷vx:boxueguu 免费领IT各学科资料.课程 Get更多干货直播课 # 概念 热部署就是正在运行状态的应用,修改了他的源码之后,在不重新启动的情况下能够自动把增量内容编译并 ...

  2. Redis 由浅入深 (2) - Redis哨兵和集群的介绍和部署方案(看完这篇redis部署再也不是问题)

    文章目录 Redis的三种部署方案 1. 单机 部署 单机运维 2.主从哨兵 主从结构部署 主从部署 redis 哨兵主从部署 哨兵部署 部署注意事项 3.集群 集群介绍 数据分区 集群的限制 集群部 ...

  3. 全网最全软件测试工程师面试题,看完你还怕拿不到offer?

    与开发工程师相比,软件测试工程师前期可能不会太深,但涉及面还是很广的. 在一年左右的实习生或岗位的早期面试中,主要是问一些基本的问题. 涉及到的知识主要包括MySQL数据库的使用.Linux操作系统的 ...

  4. SpringBoot热部署方案

    几种热部署方案 SpringBoot dev tool HotSwapAgent JRebel 阿里的arthas 美团的sonic(不公开) IDEA中使用 HotSwap agent 实现热部署 ...

  5. Maven Jrebel 多模块热部署方案

    近期在构建maven多模块项目时,发现web module依赖的其它模块,每次都要clean install成一个jar包,然后运行web module才能加载. 本生jrebel是配置在了web m ...

  6. Maven+Tomcat的热部署方案

    摘要:在日常的开发中,热部署是个非常重要的事,下面就介绍下Maven,Tomcat如何实现热部署! 第一步:配置Tomcat的登陆的用户名与密码 E:\apache-tomcat-7.0.68\con ...

  7. 全网最全的分库分表方案

    一.数据库瓶颈 不管是IO瓶颈,还是CPU瓶颈,最终都会导致数据库的活跃连接数增加,进而逼近甚至达到数据库可承载活跃连接数的阈值.在业务Service来看就是,可用数据库连接少甚至无连接可用.接下来就 ...

  8. 这应该是全网最全的分库分表方案了

    一.数据库瓶颈 不管是IO瓶颈,还是CPU瓶颈,最终都会导致数据库的活跃连接数增加,进而逼近甚至达到数据库可承载活跃连接数的阈值.在业务Service来看就是,可用数据库连接少甚至无连接可用.接下来就 ...

  9. 全网最全之接口测试【加密解密攻防完整版】实战教程详解

    看视频讲的更详细:https://www.bilibili.com/video/BV1zr4y1E7V5/? 一.对称加密 对称加密算法是共享密钥加密算法,在加密解密过程中,使用的密钥只有一个.发送和 ...

  10. xshell是什么意思_深入理解Linux shell中21的含义(全网最全,看完就懂)

    A.首先了解下1和2在Linux中代表什么 在Linux系统中0 1 2是一个文件描述符 名称 代码 操作符 Java中表示 Linux 下文件描述符(Debian 为例) 标准输入(stdin) 0 ...

最新文章

  1. 如何从从工程师跨步管理者,微博信息安全总经理手把手教你企业安全体系建设...
  2. 编译优化 | LLVM代码生成技术详解及在数据库中的应用
  3. Git区分文件名大小写
  4. 好玩的WPF第四弹:用Viewport2DVisual3D实现3D旋转效果
  5. 机器学习——贝叶斯分类器
  6. python测试驱动开发 中文版_GitHub - starryrbs/python_tdd: 使用Python测试驱动开发完成Django项目...
  7. 软件开发管理与质量控制
  8. 【DEM数据详细操作】ArcGIS提取等高线、DEM拼接、DEM裁剪、晕渲图制作
  9. 视频如何分解成图片?怎么提取视频中的图片?
  10. LittleVGL体验记录
  11. Win10连接NAS网络存储器失败解决方法
  12. EagleEye: Fast Sub-net Evaluation for Efficient Neural Network Pruning(论文阅读)
  13. Base64和Base64URL加解密
  14. 计蒜客习题:恋爱纪念日(C语言)
  15. C语言--实现汉诺塔【图文讲解,附代码】
  16. 硼碳氮纳米管的制备(碳纳米管包裹磁性金属复合纳米结构/多孔氧化物掺杂的碳纳米管包裹的碳纳米球/碳氮纳米管包裹纳米金属粒子/碳纳米管包裹Ni纳米线复合材料)
  17. 网络协议与网络编程(双电脑串口通讯)
  18. Android launcher 桌面抽屉切换动画
  19. 3、用手机模拟器上的Autojs连接电脑vscode
  20. 西北师范大学计算机科学与工程学院院长,西北师范大学计算机科学与工程学院.doc...

热门文章

  1. 想要做音乐玩音乐,有这一个软件就够了!
  2. CSS你可以不写,但这些规范必须要知道!
  3. Jmeter数据库mysql测试说明
  4. vue路由vue-router的使用
  5. Android 中文 API——android.widget合集(中)(50篇)(chm格式)
  6. 四大关键词解读“智慧乌鲁木齐”密码
  7. 【Python】Tanimoto相似度算法实现
  8. Box2dの学习制作超级积木完整版
  9. Affinity Publisher for Mac(桌面排版神器)中文版
  10. inDesign 教程,如何在表格中添加和重新排序图像?