全网最全的IDEA热部署方案,看完弄懂,再也不用加班了~
概念
热部署就是正在运行状态的应用,修改了他的源码之后,在不重新启动的情况下能够自动把增量内容编译并部署到服务器上,使得修改立即生效。热部署为了解决的问题有两个:
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热部署方案,看完弄懂,再也不用加班了~相关推荐
- idea 查看jsp是否被引用_全网最全的IDEA热部署方案,看完再也不用加班了!
传智播客博学谷 加小谷vx:boxueguu 免费领IT各学科资料.课程 Get更多干货直播课 # 概念 热部署就是正在运行状态的应用,修改了他的源码之后,在不重新启动的情况下能够自动把增量内容编译并 ...
- Redis 由浅入深 (2) - Redis哨兵和集群的介绍和部署方案(看完这篇redis部署再也不是问题)
文章目录 Redis的三种部署方案 1. 单机 部署 单机运维 2.主从哨兵 主从结构部署 主从部署 redis 哨兵主从部署 哨兵部署 部署注意事项 3.集群 集群介绍 数据分区 集群的限制 集群部 ...
- 全网最全软件测试工程师面试题,看完你还怕拿不到offer?
与开发工程师相比,软件测试工程师前期可能不会太深,但涉及面还是很广的. 在一年左右的实习生或岗位的早期面试中,主要是问一些基本的问题. 涉及到的知识主要包括MySQL数据库的使用.Linux操作系统的 ...
- SpringBoot热部署方案
几种热部署方案 SpringBoot dev tool HotSwapAgent JRebel 阿里的arthas 美团的sonic(不公开) IDEA中使用 HotSwap agent 实现热部署 ...
- Maven Jrebel 多模块热部署方案
近期在构建maven多模块项目时,发现web module依赖的其它模块,每次都要clean install成一个jar包,然后运行web module才能加载. 本生jrebel是配置在了web m ...
- Maven+Tomcat的热部署方案
摘要:在日常的开发中,热部署是个非常重要的事,下面就介绍下Maven,Tomcat如何实现热部署! 第一步:配置Tomcat的登陆的用户名与密码 E:\apache-tomcat-7.0.68\con ...
- 全网最全的分库分表方案
一.数据库瓶颈 不管是IO瓶颈,还是CPU瓶颈,最终都会导致数据库的活跃连接数增加,进而逼近甚至达到数据库可承载活跃连接数的阈值.在业务Service来看就是,可用数据库连接少甚至无连接可用.接下来就 ...
- 这应该是全网最全的分库分表方案了
一.数据库瓶颈 不管是IO瓶颈,还是CPU瓶颈,最终都会导致数据库的活跃连接数增加,进而逼近甚至达到数据库可承载活跃连接数的阈值.在业务Service来看就是,可用数据库连接少甚至无连接可用.接下来就 ...
- 全网最全之接口测试【加密解密攻防完整版】实战教程详解
看视频讲的更详细:https://www.bilibili.com/video/BV1zr4y1E7V5/? 一.对称加密 对称加密算法是共享密钥加密算法,在加密解密过程中,使用的密钥只有一个.发送和 ...
- xshell是什么意思_深入理解Linux shell中21的含义(全网最全,看完就懂)
A.首先了解下1和2在Linux中代表什么 在Linux系统中0 1 2是一个文件描述符 名称 代码 操作符 Java中表示 Linux 下文件描述符(Debian 为例) 标准输入(stdin) 0 ...
最新文章
- 如何从从工程师跨步管理者,微博信息安全总经理手把手教你企业安全体系建设...
- 编译优化 | LLVM代码生成技术详解及在数据库中的应用
- Git区分文件名大小写
- 好玩的WPF第四弹:用Viewport2DVisual3D实现3D旋转效果
- 机器学习——贝叶斯分类器
- python测试驱动开发 中文版_GitHub - starryrbs/python_tdd: 使用Python测试驱动开发完成Django项目...
- 软件开发管理与质量控制
- 【DEM数据详细操作】ArcGIS提取等高线、DEM拼接、DEM裁剪、晕渲图制作
- 视频如何分解成图片?怎么提取视频中的图片?
- LittleVGL体验记录
- Win10连接NAS网络存储器失败解决方法
- EagleEye: Fast Sub-net Evaluation for Efficient Neural Network Pruning(论文阅读)
- Base64和Base64URL加解密
- 计蒜客习题:恋爱纪念日(C语言)
- C语言--实现汉诺塔【图文讲解,附代码】
- 硼碳氮纳米管的制备(碳纳米管包裹磁性金属复合纳米结构/多孔氧化物掺杂的碳纳米管包裹的碳纳米球/碳氮纳米管包裹纳米金属粒子/碳纳米管包裹Ni纳米线复合材料)
- 网络协议与网络编程(双电脑串口通讯)
- Android launcher 桌面抽屉切换动画
- 3、用手机模拟器上的Autojs连接电脑vscode
- 西北师范大学计算机科学与工程学院院长,西北师范大学计算机科学与工程学院.doc...
热门文章
- 想要做音乐玩音乐,有这一个软件就够了!
- CSS你可以不写,但这些规范必须要知道!
- Jmeter数据库mysql测试说明
- vue路由vue-router的使用
- Android 中文 API——android.widget合集(中)(50篇)(chm格式)
- 四大关键词解读“智慧乌鲁木齐”密码
- 【Python】Tanimoto相似度算法实现
- Box2dの学习制作超级积木完整版
- Affinity Publisher for Mac(桌面排版神器)中文版
- inDesign 教程,如何在表格中添加和重新排序图像?