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

Java替換jar包中class文件的完整步驟記錄

 更新時間:2025年05月07日 10:27:55   作者:bjzhang75  
這篇文章主要介紹了Java替換jar包中class文件的完整步驟,通過替換修改后的Java類的class文件來更新java應用版本,文中通過圖文介紹的非常詳細,需要的朋友可以參考下

在更新java應用版本的運維工作中,由于一些原因,開發(fā)沒辦法給到完整的jar包,這個時候,就可以只將修改后的某個Java類的class文件替換掉原來iar包中的class文件,重新啟動服務即可:

1、將jar包和將要替換的class文件放到同一個目錄下;

2、查找jar包中xxxdemo.class文件所在的具體路徑

jar -tvf xxx.jar | grep xxx.class

3、將xxx.jar中指定的xxx.class解壓出來

jar -xvf xxx.jar  xxx/xxx/xxx/xxx/xxx/xxx.class(路徑為第2步的路徑結(jié)果)

4、將新的xxx.class文件放到第3步的路徑下(替換前備份原文件)

這里更換名字的方法模擬這一步,實際生產(chǎn)環(huán)境操作按需要放進新的文件

5、重新打包jar

jar -uvf  xxx.jar xxx/xxx/xxx/xxx/xxx/xxx.class(路徑為第2步的路徑結(jié)果)

查看jar包里的文件已經(jīng)是新文件(如果是一樣名字的會被覆蓋處理):

6、重啟使用該jar包應用(如有需要)。

7、替換jar包中的jar文件

前2個查找查找步驟同上,最后一步略有不同。如:

jar -uvf0 abc.jar BOOT-INF/lib/a.jar
##使用的是-uvf0而是不是-uvf

附:jar包如何使用命令替換class文件

話不多說,直接上命令:

# 1.檢索文件
jar -tvf Test-0.0.1-SNAPSHOT.jar | grep Test.class
# 2.取出文件
jar -xvf Test-0.0.1-SNAPSHOT.jar BOOT-INF/classes/com/test/Test.class
#3.替換文件
mv Test.class BOOT-INF/classes/com/test/Test.class
#4.打入jar包
jar -uvf Test-0.0.1-SNAPSHOT.jar BOOT-INF/classes/com/test/Test.class
#5.刪除冗余文件
rm -r BOOT-INF

腳本文件:

updateClass.sh

#!/bin/bash
# 動態(tài)部署class腳本

className=`ls|grep .class$`
jarName=`ls|grep .jar$`	

if [ -z $className ]
then
    echo "No class file found."
    exit 1
fi

if [ -z $jarName ]
then
    echo "No jar file found."
    exit 1
fi

echo "The $className is replacing..."

fullPath=`jar -tvf $jarName | grep "/$className" | awk '{print $NF}'`

jar -xvf $jarName $fullPath
mv $className $fullPath
jar -uvf $jarName $fullPath
rm -r BOOT-INF

總結(jié)

到此這篇關于Java替換jar包中class文件的文章就介紹到這了,更多相關Java替換jar包class文件內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!

相關文章

  • Java內(nèi)存分布歸納整理詳解

    Java內(nèi)存分布歸納整理詳解

    這篇文章主要介紹了java程序運行時內(nèi)存分布詳解,需要的朋友可以參考下
    2017-04-04
  • java?Long類型轉(zhuǎn)為json后數(shù)據(jù)損失精度的處理方式

    java?Long類型轉(zhuǎn)為json后數(shù)據(jù)損失精度的處理方式

    這篇文章主要介紹了java?Long類型轉(zhuǎn)為json后數(shù)據(jù)損失精度的處理方式,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2022-01-01
  • java必懂的冷知識點之Base64加密與解密

    java必懂的冷知識點之Base64加密與解密

    這篇文章主要介紹了java必懂的冷知識點之Base64加密與解密的相關資料,本文給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2021-03-03
  • 使用FormData上傳二進制文件、對象、對象數(shù)組方式

    使用FormData上傳二進制文件、對象、對象數(shù)組方式

    這篇文章主要介紹了使用FormData上傳二進制文件、對象、對象數(shù)組方式,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
    2024-01-01
  • 關于Java中配置ElasticSearch集群環(huán)境賬號密碼的問題

    關于Java中配置ElasticSearch集群環(huán)境賬號密碼的問題

    這篇文章主要介紹了Java中配置ElasticSearch集群環(huán)境賬號密碼的問題,本文給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2022-04-04
  • Spring循環(huán)依賴實例詳解

    Spring循環(huán)依賴實例詳解

    Spring循環(huán)依賴是指兩個或多個Bean相互依賴,形成閉環(huán),Spring通過巧妙的機制(如三級緩存)默認支持setter注入的循環(huán)依賴,但不支持constructor注入的循環(huán)依賴(會拋異常),本文介紹spring循環(huán)依賴的相關操作,感興趣的朋友跟隨小編一起看看吧
    2026-03-03
  • Java遞歸調(diào)用如何實現(xiàn)數(shù)字的逆序輸出方式

    Java遞歸調(diào)用如何實現(xiàn)數(shù)字的逆序輸出方式

    這篇文章主要介紹了Java遞歸調(diào)用如何實現(xiàn)數(shù)字的逆序輸出方式,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2023-04-04
  • Java中實現(xiàn)Unicode編碼解碼的方法

    Java中實現(xiàn)Unicode編碼解碼的方法

    在Java編程中,Unicode編碼解碼是一項基本的操作,Unicode是一種用于表示文字字符的標準編碼,它包含了世界上幾乎所有的字符,包括各種語言的字母、符號和表情符號等,在Java中通過Unicode編碼,我們可以將任意字符轉(zhuǎn)換為字節(jié)流進行傳輸和存儲
    2024-02-02
  • Java中的異常處理機制try-catch詳解

    Java中的異常處理機制try-catch詳解

    這篇文章主要介紹了Java中的異常處理機制try-catch詳解,本文給大家介紹的非常詳細,感興趣的朋友跟隨小編一起看看吧
    2024-12-12
  • 五分鐘手擼一個Spring容器(萌芽版)

    五分鐘手擼一個Spring容器(萌芽版)

    Spring的兩大內(nèi)核分別是IOC和AOP,其中最最核心的是IOC。這篇文章主要介紹了五分鐘,手擼一個Spring容器的相關知識,需要的朋友可以參考下
    2022-03-03

最新評論

锡林郭勒盟| 霍林郭勒市| 乐昌市| 临颍县| 方山县| 门源| 扬州市| 库车县| 边坝县| 乃东县| 唐海县| 大丰市| 鹤山市| 始兴县| 崇明县| 界首市| 南川市| 兴海县| 连州市| 武川县| 安泽县| 称多县| 大名县| 宿迁市| 济宁市| 石城县| 黄梅县| 黎川县| 平江县| 杨浦区| 克拉玛依市| 南川市| 佳木斯市| 抚州市| 玉山县| 中宁县| 正阳县| 阿拉善右旗| 阿鲁科尔沁旗| 林西县| 沂源县|