IDEA+JRebel实现全自动热部署的方法步骤

 更新时间:2019年11月20日 15:17:36   作者:yiyayiya  
这篇文章主要介绍了IDEA+JRebel实现全自动热部署的方法步骤,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧

简述:JRebel是一款JVM插件,它使得Java代码修改后不用重启系统,立即生效。IDEA上原生是不支持热部署的,一般更新了 Java 文件后要手动重启 Tomcat 服务器,才能生效,特别影响开发效率。目前对于IDEA热部署最好的解决方案就是安装JRebel插件。

下载安装JRebel

IDEA 依次打开 File | Settings | Plugins → 搜索JRebel进行安装并重启IDEA

激活JRebel

方法一:JRebel是一款收费的服务,可以通过官网进行激活码购买。

方法二:通过github项目进行激活。项目地址 https://github.com/ilanyu/ReverseProxy/releases/latest

这里推荐将代理搭建在自己的服务器上

# 下载镜像
docker pull ilanyu/golang-reverseproxy
# 以后台方式启动镜像,端口映射为8888(端口请自行修改) 
docker run --name jrebel -d -p 8888:8888 ilanyu/golang-reverseproxy

在线生成GUID地址

搭建成功后激活地址为: http://你的服务器ip:8888/{ GUID }

当然你的服务器还可以进行域名绑定,docker也可启用Https服务,激活地址可变为https://域名/{ GUID },此方式自行探索,我这里就不演示了。

打开IDEA开始激活JRebel(初次激活可能不太一样,但只要进入到激活面板就行)

点击Change license,进行已激活。激活成功界面

激活后一定要手动切换到离线模式,可离线180天,可随时重新点下“Renew Offline Seat”刷新激活周期,180天后激活状态会重新刷新 。

简单使用

激活后,菜单中会出现对应图标,你就可以通过JRebel启动你的项目

启动之前需要添加rebel.xml(你要热部署哪个项目就直接勾选,会自动为你进行配置,rebel.xml里默认配置了两个路径,作用为监控变化)

正式启动,项目需要正确配置,例如使用Tomcat启动的项目,IDEA中的Tomcat依然要正确配置,启动时选择Run with JRebel而不是选择从前的run,JRebel会帮你启动Tomcat并热部署。

JRebel热部署

不生效解决打开 File | Settings | Build, Execution, Deployment | Compiler 勾选自动编译

Shift+Ctrl+Alt+/,选择Registry 勾选上compiler.automake.allow.when.app.running

检查是否添加了rebel.xml

手动编译当前文件 Ctrl + Shift + F9

到此教程结束,修改代码后就不用每次重启tomcat

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持脚本之家。

相关文章

  • Java实现游戏抽奖算法

    Java实现游戏抽奖算法

    这篇文章主要为大家详细介绍了Java实现游戏抽奖算法,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2020-11-11
  • java截取字符串中的指定字符的两种方法(以base64图片为例)

    java截取字符串中的指定字符的两种方法(以base64图片为例)

    本文介绍了使用Java截取字符串中指定字符的方法,通过substring索引和正则实现,文章详细介绍了实现步骤和示例代码,对于想要了解如何使用Java截取字符串指定字符的读者具有一定的参考价值
    2023-08-08
  • 小米推送Java代码

    小米推送Java代码

    今天小编就为大家分享一篇关于小米推送Java代码,小编觉得内容挺不错的,现在分享给大家,具有很好的参考价值,需要的朋友一起跟随小编来看看吧
    2019-01-01
  • java 单例模式的实例详解

    java 单例模式的实例详解

    这篇文章主要介绍了java 单例模式的实例详解的相关资料,希望通过本文能帮助大家彻底理解掌握这部分内容,需要的朋友可以参考下
    2017-10-10
  • Java监听器三种实现方法代码解析

    Java监听器三种实现方法代码解析

    这篇文章主要介绍了Java监听器三种实现方法代码解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2020-08-08
  • 浅析JavaWeb项目架构之Redis分布式日志队列

    浅析JavaWeb项目架构之Redis分布式日志队列

    架构、分布式、日志队列,标题自己都看着唬人,其实就是一个日志收集的功能,只不过中间加了一个Redis做消息队列罢了。下面通过本文给大家分享JavaWeb项目架构之Redis分布式日志队列,感兴趣的朋友一起看看吧
    2018-01-01
  • Java Lambda表达式超详细介绍

    Java Lambda表达式超详细介绍

    这篇文章主要介绍了Java Lambda表达式,Lambda表达式是Java SE 8中一个重要的新特性, Lambda 表达式(Lambda expression)可以看作是一个匿名函数,基于数学中的λ演算得名,也可称为闭包(Closure),下面来看看文章具体的详细介绍吧
    2022-02-02
  • SpringBoot读取配置文件的五种方法总结

    SpringBoot读取配置文件的五种方法总结

    这篇文章主要为大家详细介绍了SpringBoot读取配置文件的五种方法,文中的示例代码讲解详细,对我们学习SpringBoot有一定帮助,需要的可以参考一下
    2022-08-08
  • Java实战之敏感词过滤器

    Java实战之敏感词过滤器

    这篇文章主要介绍了Java实战之敏感词过滤器,文中有非常详细的代码示例,对正在学习java的小伙伴们有非常好的帮助,需要的朋友可以参考下
    2021-04-04
  • java 设计模式之State(状态模式)

    java 设计模式之State(状态模式)

    这篇文章主要介绍了java 设计模式之State(状态模式)的相关资料,一个类的行为基于它的状态的改变而改变。状态模式归属于行为型模式,需要的朋友可以参考下
    2017-08-08

最新评论