最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Idea熱加載插件JRebel激活以及使用教程

 更新時(shí)間:2023年02月24日 09:50:56   作者:深情不及里子  
JRebel是一款JVM插件,它使得Java代碼修改后不用重啟系統(tǒng),立即生效,下面這篇文章主要給大家介紹了關(guān)于Idea熱加載插件JRebel激活以及使用的相關(guān)資料,文中通過圖文介紹的非常詳細(xì),需要的朋友可以參考下

前言

在 Java 開發(fā)領(lǐng)域,熱部署一直是一個(gè)難以解決的問題,目前的 Java 虛擬機(jī)只能實(shí)現(xiàn)方法體的修改熱部署,例如使用devtool來實(shí)現(xiàn)熱部署,但是在功能上它也有所限制,如果新增方法或者修改方法參數(shù)后,熱部署是不生效的。因此對(duì)于整個(gè)類的結(jié)構(gòu)修改,仍然需要重啟虛擬機(jī),對(duì)類重新加載才能完成更新操作。對(duì)于某些大型的應(yīng)用來說,每次的重啟都需要花費(fèi)大量的時(shí)間成本。

因此,在這里為大家?guī)硪豢領(lǐng)dea集成的熱加載插件-JRbel。但是這個(gè)插件是需要收費(fèi)的,故在這里為大家?guī)砑せ钍褂玫脑敿?xì)教程,手把手教學(xué)一波。親測(cè)可用!

Jrbel插件下載

首先在Idea中找到setting->plugins,在MarketPlace中搜索該插件。

點(diǎn)擊“應(yīng)用”后,按要求重啟一下Idea,使下載的Jrebel插件生效。

這個(gè)時(shí)候在Idea主界面?zhèn)冗厵谏暇陀蠮rebel的安裝指南出現(xiàn)了。

然后我們根據(jù)Jrebel的安裝指南進(jìn)行安裝即可。

激活Jrebel

安裝第一步就需要對(duì)Jrebel進(jìn)行激活,這里筆者推薦第一種激活方式。

然后我們需要配置license server地址,這里我們通過一個(gè)JrebelBrainsLicenseServerforJava的激活jar包來實(shí)現(xiàn),通過將jar包放在服務(wù)器上運(yùn)行,然后就可以通過我們自己的服務(wù)器來作為license server地址了。jar報(bào)地址來源于鏈接: https://pan.baidu.com/s/1rrn-6F26JpD5RSsbJV3-hQ 密碼: dscu。也可以在筆者資源里自行獲取。

如果放在服務(wù)器上,特別是騰訊云,阿里云之類的,記得開放服務(wù)器防火墻,安全組策略以及Linux系統(tǒng)防火墻上的1008端口。沒有服務(wù)器也不要緊,用自己電腦也可。只不過不能一直把jar包運(yùn)行著。

通過java的命令運(yùn)行jar包。

java -jar JrebelBrainsLicenseServerforJava-1.0-SNAPSHOT-jar-with-dependencies.jar -p 1008 &

C:\Users\young\Desktop\開源工具集>java -jar JrebelBrainsLicenseServerforJava-1.0-SNAPSHOT-jar-with-dependencies.jar -p 1008 &
2023-02-05 11:00:30.612:INFO:oejs.Server:jetty-8.y.z-SNAPSHOT
2023-02-05 11:00:31.107:INFO:oejs.AbstractConnector:Started SelectChannelConnector@0.0.0.0:1008
License Server started at http://localhost:1008
JetBrains Activation address was: http://localhost:1008/
JRebel Activation address was: http://localhost:1008/{tokenname}, with any email.

這里jar包就運(yùn)行成功了,可以看到,JRebel地址還需要一個(gè){tokenname},這里可以通過GUIDS在線獲取工具進(jìn)行獲取。得到一個(gè)隨機(jī)的tokenname值,如果過時(shí)了,重新刷新生成即可。

然后填入最終的license server地址:

http://192.168.98.1:1008/ fab341e4-f267-41df-ad7d-d37a3952e710
注意:的是這里要添加上jar包的開放端口1008

然后輸入一個(gè)可用的郵箱地址,即可。點(diǎn)擊激活便可成功!

但是到這還沒完,雖然現(xiàn)在 Jrebel就能正常使用了,但很多人往往用不到幾天就提示激活失敗, 無法使用了,甚至jar包結(jié)束運(yùn)行后激活就失敗了。原因在于Jrebel激活之后默認(rèn)是聯(lián)網(wǎng)使用的 , 在該模式下 , Jrebel會(huì)一直聯(lián)網(wǎng)監(jiān)測(cè)激活信息。所以要調(diào)為離線使用的,操作方法就是進(jìn)入Jrebel設(shè)置中點(diǎn)擊Work offile 按鈕即可。使其變?yōu)殡x線模式即可。

另外我們也可以在這設(shè)置手動(dòng)熱部署的間隔平均時(shí)間。

這樣激活就算徹底完成了。

但是這時(shí)候僅僅這點(diǎn)配置,功能還是不能正常使用的。還需要我們?cè)贗dea中設(shè)置自動(dòng)編譯。

配置自動(dòng)編譯

找到setting->build,Excution->Compiler,并勾選Build project automatically。

然后找到setting->Advanced Setting,勾選Compiler中的

Allow auto-make to start even if developed application is currently running

這里筆者是基于idea2022版本配置的,基本上配置完成就可以了。

本地?zé)岵渴鹗褂?/h2>

配置完Jrebel后,如果在本地使用,可以通過Idea界面左下角的Jrenel面板對(duì)自己的項(xiàng)目進(jìn)行設(shè)置即可。

左側(cè)的圖標(biāo)對(duì)應(yīng)的本地?zé)岵渴穑覀?cè)的對(duì)應(yīng)遠(yuǎn)程熱部署。

勾選成功后項(xiàng)目或者模塊中的src/resource目錄下回生成一個(gè)rebel.xml文件

主啟動(dòng)類,和運(yùn)行欄也會(huì)出現(xiàn)Jrebel運(yùn)行的圖標(biāo)。

如果發(fā)現(xiàn)啟動(dòng)后部分更新效果并沒有,也可嘗試在啟動(dòng)類上配置一下更新資源的配置。

都配置好了以后,可以先試一下,第一次運(yùn)行要重新編譯,打包,執(zhí)行。如果不生效可以重啟一次idea, 一般來講重啟后都可以生效。

遠(yuǎn)程熱部署使用

遠(yuǎn)程熱部署需要在服務(wù)器上安裝并JRebel,成功后需要設(shè)置遠(yuǎn)程連接的密碼,在JRebel的根目錄下執(zhí)行以下命令:

java -jar jrebel.jar -set-remote-password 123456
這里設(shè)置的123456則是遠(yuǎn)程的密碼,在IDEA連接服務(wù)器的時(shí)候需要。

此時(shí)將Spring Boot項(xiàng)目打包成一個(gè)Jar,上傳到服務(wù)器,執(zhí)行以下命令啟動(dòng)項(xiàng)目:

nohup java -agentpath:/www/server/jrebel/lib/libjrebel64.so  -Drebel.remoting_plugin=true -Xdebug -Xrunjdwp:transport=dt_socket,server=y,suspend=n,address=9083 -jar xxx.jar &

libjrebel64.so這個(gè)文件是JRebel的lib目錄下的文件。-Xdebug之后到-jar之前這些命令使是開啟遠(yuǎn)程調(diào)試的,如果不需要的可以去掉。

此時(shí)在IDEA中需要設(shè)置連接到剛才啟動(dòng)的遠(yuǎn)程項(xiàng)目,打開File->setting->JRbel&XRebel->JRbel Remote Servers,如下圖:

步驟如下:

  1. 點(diǎn)擊+號(hào)添加一個(gè)服務(wù)
  2. 填寫信息
  • server name隨便起個(gè)服務(wù)的名字
  • server URL格式:http://ip:port,這里的ip是服務(wù)器的IP,port是項(xiàng)目端口號(hào)。
  • 遠(yuǎn)程密碼則是上文設(shè)置的JRebel的密碼123456。

3.點(diǎn)擊OK,即可添加成功。

以上設(shè)置成功后,點(diǎn)擊右上角的遠(yuǎn)程部署按鈕,下圖中的②號(hào)按鈕,則會(huì)自動(dòng)更新服務(wù)器上已啟動(dòng)項(xiàng)目的代碼使之本地修改在服務(wù)端自動(dòng)生效:

只要本地有了更改,點(diǎn)擊遠(yuǎn)程熱部署按鈕,則會(huì)自動(dòng)上傳代碼到服務(wù)器端并實(shí)時(shí)更新,不用重新啟動(dòng)項(xiàng)目。

注意:如果是多模塊開發(fā),比如分為api(最終的Jar包),commons(公共包),service(業(yè)務(wù)層的包),最終打包運(yùn)行在服務(wù)器端的是api這個(gè)模塊,其余兩個(gè)模塊都是屬于依賴模塊,雖然在JRebel遠(yuǎn)程熱部署選項(xiàng)中都勾選了,但是它們的代碼更改并不會(huì)在服務(wù)端生效。

這個(gè)如何解決呢?

很簡(jiǎn)單,在api項(xiàng)目下的rebel-remote.xml文件中將其余兩個(gè)模塊添加進(jìn)去,默認(rèn)的如下:

<?xml version="1.0" encoding="UTF-8"?><rebel-remotexmlns="http://www.zeroturnaround.com/rebel/remote">
<id>xx.xx.xx.api</id>
</rebel-remote>

添加之后的代碼如下:

<?xml version="1.0" encoding="UTF-8"?><rebel-remotexmlns="http://www.zeroturnaround.com/rebel/remote">
<id>xx.xxx.xx.api</id>
<id>xx.xx.xx.service</id>
<id>xx.xx.xx.core</id>
</rebel-remote>
以上的<id>標(biāo)簽中指定的是模塊的包名(package)。

好了,Jrebel插件的激活使用就搞定了~

總結(jié)

到此這篇關(guān)于Idea熱加載插件JRebel激活以及使用的文章就介紹到這了,更多相關(guān)Idea熱加載插件JRebel使用內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • JAVA中split函數(shù)的常見用法實(shí)例

    JAVA中split函數(shù)的常見用法實(shí)例

    Java中我們可以利用split把字符串按照指定的分割符進(jìn)行分割,然后返回字符串?dāng)?shù)組,下面這篇文章主要給大家介紹了關(guān)于JAVA中split函數(shù)的常見用法,文中通過實(shí)例代碼介紹的非常詳細(xì),需要的朋友可以參考下
    2022-07-07
  • springboot+mybatis plus實(shí)現(xiàn)樹形結(jié)構(gòu)查詢

    springboot+mybatis plus實(shí)現(xiàn)樹形結(jié)構(gòu)查詢

    實(shí)際開發(fā)過程中經(jīng)常需要查詢節(jié)點(diǎn)樹,根據(jù)指定節(jié)點(diǎn)獲取子節(jié)點(diǎn)列表,本文主要介紹了springboot+mybatis plus實(shí)現(xiàn)樹形結(jié)構(gòu)查詢,感興趣的可以了解一下
    2021-07-07
  • 本地安裝Nacos的踩坑過程及解決

    本地安裝Nacos的踩坑過程及解決

    這篇文章主要介紹了本地安裝Nacos的踩坑過程及解決,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2024-06-06
  • SpringBoot lombok(注解@Getter @Setter)詳解

    SpringBoot lombok(注解@Getter @Setter)詳解

    通過使用Lombok庫(kù),SpringBoot應(yīng)用可以自動(dòng)化生成常用的方法如setter和getter,顯著降低了代碼冗余并提高了開發(fā)效率,Lombok的@Getter和@Setter注解用于自動(dòng)生成屬性的訪問和修改方法,而@Data注解則提供了一個(gè)全面的解決方案
    2024-11-11
  • SpringBoot項(xiàng)目中@Test不出現(xiàn)可點(diǎn)擊運(yùn)行的按鈕問題

    SpringBoot項(xiàng)目中@Test不出現(xiàn)可點(diǎn)擊運(yùn)行的按鈕問題

    這篇文章主要介紹了SpringBoot項(xiàng)目中@Test不出現(xiàn)可點(diǎn)擊運(yùn)行的按鈕問題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2022-01-01
  • Java中CountDownLatch工具類詳細(xì)解析

    Java中CountDownLatch工具類詳細(xì)解析

    這篇文章主要介紹了Java中CountDownLatch工具類詳細(xì)解析,創(chuàng)建CountDownLatch對(duì)象時(shí),會(huì)傳入一個(gè)count數(shù)值,該對(duì)象每次調(diào)用countDown()方法會(huì)使count?--?,就是count每次減1,需要的朋友可以參考下
    2023-11-11
  • SpringBoot條件注解核心作用與使用場(chǎng)景詳解

    SpringBoot條件注解核心作用與使用場(chǎng)景詳解

    Spring?Boot的條件注解為開發(fā)者提供了強(qiáng)大的動(dòng)態(tài)配置能力,理解其原理和適用場(chǎng)景是構(gòu)建靈活、可擴(kuò)展應(yīng)用的關(guān)鍵,本文將系統(tǒng)梳理所有常用的條件注解,結(jié)合代碼示例說明其作用與使用場(chǎng)景,感興趣的朋友一起看看吧
    2025-04-04
  • 使用Java進(jìn)行FreeMarker的web模板開發(fā)的基礎(chǔ)教程

    使用Java進(jìn)行FreeMarker的web模板開發(fā)的基礎(chǔ)教程

    這篇文章主要介紹了使用Java進(jìn)行FreeMarker模板引擎開發(fā)的基礎(chǔ)教程,文中針對(duì)FreeMarker的網(wǎng)頁(yè)標(biāo)簽用法給出了一些例子,需要的朋友可以參考下
    2016-03-03
  • Spring Boot實(shí)現(xiàn)跨域訪問實(shí)現(xiàn)代碼

    Spring Boot實(shí)現(xiàn)跨域訪問實(shí)現(xiàn)代碼

    本文通過實(shí)例代碼給大家介紹了Spring Boot實(shí)現(xiàn)跨域訪問的知識(shí),然后在文中給大家介紹了spring boot 服務(wù)器端設(shè)置允許跨域訪問 的方法,感興趣的朋友一起看看吧
    2017-07-07
  • Java實(shí)現(xiàn)樹形菜單的方法總結(jié)

    Java實(shí)現(xiàn)樹形菜單的方法總結(jié)

    當(dāng)我們想要展示層級(jí)結(jié)構(gòu),如文件目錄、組織結(jié)構(gòu)或分類目錄時(shí),樹形菜單是一個(gè)直觀且有效的解決方案,本文為大家整理了java中幾種常見方法,希望對(duì)大家有所幫助
    2023-08-08

最新評(píng)論

商都县| 巩留县| 南汇区| 马龙县| 宜君县| 荣昌县| 宣城市| 马尔康县| 阿坝县| 柘城县| 寻乌县| 丽水市| 邮箱| 大关县| 兰考县| 盐池县| 马鞍山市| 化州市| 克拉玛依市| 永胜县| 宜宾县| 阿拉善左旗| 大连市| 连南| 大安市| 抚州市| 清远市| 巍山| 兴业县| 武定县| 南京市| 承德县| 九龙坡区| 镇远县| 霍林郭勒市| 山丹县| 湟源县| 广饶县| 惠安县| 泸定县| 饶阳县|