Linux下用jar命令替換war包中的文件【轉】


問題背景:在Linux環境上的weblogic發布war包,有時候只是修改了幾個文件,也要上傳整個war包,這樣很費時間,因此整理了一下Linux環境,更新單個文件的方法。


1.如果要替換的文件直接在war包的根目錄(一級目錄)下,直接使用jar uvf命令替換即可

如:替換a.war中b.xml文件

    jar uvf a.war b.xml

注:b.xml需要和a.war在同一個目錄下。


2.如果要替換的文件在war包的二級及以下目錄下,則需要以下步驟:

(1)使用jar tvf war名稱 | grep 目標文件名 查詢出目標文件在war包中的目錄

(2)使用jar xvf war名稱 目標文件名(copy上面查出的全路徑) 將目標文件及所在war包中的目錄解壓到當前路徑

(3)修改目標文件的內容,或者將要新的目標文件替換掉提取出來的目標文件

(4)使用jar uvf war名稱 目標文件名(和步驟(2)中的目標文件名相同) 將新目標文件替換到war包中

舉例:替換SpringJMS04031240.war包中的ZcjdService.class,ZcjdService$1.class文件

(1)# jar -tvf SpringJMS04031240.war |grepZcjdService


 

(2)# jar -xvf SpringJMS04031240.war WEB-INF/classes/com/inspur/service/ZcjdService.class
 

(3)# cp ZcjdService.class WEB-INF/classes/com/inspur/service/
  cp:是否覆蓋"WEB-INF/classes/com/inspur/service/ZcjdService.class"? yes



(4)# jar -uvf SpringJMS04031240.war WEB-INF/classes/com/inspur/service
  正在添加: WEB-INF/classes/com/inspur/service/ZcjdService.class(輸入 = 4426) (輸出 = 1892)(壓縮了 57%)

轉自

作者:李曉LOVE向陽
來源:CSDN
原文:https://blog.csdn.net/u013310119/article/details/79850914
版權聲明:本文為博主原創文章,轉載請附上博文鏈接!


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM