Ⅰ linux解壓jar包命令
JAR包是Java中所特有一種壓縮文檔,我們可以通過相關命令解壓jar包,下面由我為大家整理了linux下解壓jar包命令的相關知識,希望對大家有所幫助。
一、linux解壓jar包命令——jar命令詳解
jar命令選項:
jar命令格式:jar {c t x u f }[ v m e 0 M i ][-C 目錄]文件名...
其中{ctxu}這四個選項必須選其一。[v f m e 0 M i ]是可選選項,文件名也是必須的。
-c 創建一個jar包
-t 顯示jar中的內容列表
-x 解壓jar包
-u 添加文件到jar包中
-f 指定jar包的文件名
-v 生成詳細的報造,並輸出至標准設備
-m 指定manifest.mf文件.(manifest.mf文件中可以對jar包及其中的內容作一些一設置)
-0 產生jar包時不對其中的內容進行壓縮處理
-M 不產生所有文件的清單文件(Manifest.mf)。這個參數與忽略掉-m參數的設置
-i 為指定的jar文件創建索引文件
-C 表示轉到相應的目錄下執行jar命令,相當於cd到那個目錄,然後不帶-C執行jar命令
二、linux解壓jar包命令——jar使用範例
(1)創建jar包
$ jar cf hello.jar hello 利用test目錄生成hello.jar包,如hello.jar存在,則覆蓋
(2)創建並顯示打包過程
$ jar cvf hello.jar hello 利用hello目錄創建hello.jar包,並顯示創建過程
例:E:>jar cvf hello.jar hello
標明清單(manifest)
增加:hello/(讀入= 0) (寫出= 0)(存儲了 0%)
增加:hello/TestServlet2.class(讀入= 1497) (寫出= 818)(壓縮了 45%)
增加:hello/HelloServlet.class(讀入= 1344) (寫出= 736)(壓縮了 45%)
增加:hello/TestServlet1.class(讀入= 2037) (寫出= 1118)(壓縮了 45%)
(3)顯示jar包
$ jar tvf hello.jar 查看hello.jar包的內容
指定的jar包必須真實存在,否則會發生FileNoutFoundException。
(4)解壓jar包
$ jar xvf hello.jar 解壓hello.jar至當前目錄
(5)jar中添加文件
$ jar uf hello.jar HelloWorld.java 將HelloWorld.java添加到hello.jar包中
(6)創建不壓縮內容jar包
$ jar cvf0 hello.jar *.class 利用當前目錄中所有的.class文件生成一個不壓縮jar包
(7)創建帶manifest.mf文件的jar包
$ jar cvfm hello.jar manifest.mf hello
創建的jar包多了一個META-INF目錄,META-INF止錄下多了一個manifest.mf文件,至於manifest.mf的作用,後面會提到.
(8)忽略manifest.mf文件
$ jar cvfM hello.jar hello 生成的jar包中不包括META-INF目錄及manifest.mf文件
(9)加-C應用:
$ jar cvfm hello.jar mymanifest.mf -C hello/
表示在切換到hello目錄下然後再執行jar命令
(10)-i為jar文件生成索引列表
當一個jar包中的內容很好的時候,你可以給它生成一個索引文件,這樣看起來很省事。
$ jar i hello.jar
執行完這條命令後,它會在hello.jar包的META-INF文件夾下生成一個名為INDEX.LIST的索引文件,
它會生成一個列表,最上邊為jar包名。
(11)導出解壓列表
jar tvf hello.jar >hello.txt
如果你想查看解壓一個jar的詳細過程,而這個jar包又很大,屏幕信息會一閃而過,
這時你可以把列表輸出到一個文件中,慢慢欣賞!
(12)jar -cvf hello.jar hello/*
例如原目錄結構如下:
hello
|---com
|---org
你本想只把com目錄和org目錄打包,而這時jar命令會連同hello目洋也一塊打包進。
這點大家要注意。jar命令生成的壓縮文件會包含它後邊出的目錄。我們應該進入到hello目錄再執行jar命令。
注意:manifest.mf這個文件名,用戶可以任指定,但jar命令只認識Manifest.mf,它會對用戶指定的文件名進行相應在的轉換,這不需用戶擔心。
三、linux解壓jar包命令——JAR命令使用技巧
(1) jar創建壓ZIP文件
jar cvfM TestZIP.jar test 加M參數為了不生成META-INF相關內容
然後將TestZIP.jar改為TestZIP.zip就可以,是不是很簡單....
(2) 使用WinRAR解壓.jar文件
上邊我們已經說過了,說JAR文件是一種特殊的壓縮文件,所以它當然可以用我們常用的一些解壓縮工具來解了,
至於怎麼解,這就不用我說了吧。
(3) 用WinRAR生成.jar文件
我們已經說過JAR包與ZIP包主要區別就是JAR包中多一個META-INF的目錄,
META-INF目錄下有一個manifest.mf文件,我們只要建立好相關的目錄一壓縮就可以了。
目錄的結構如下:
TestJar
|--META-INF
|--manifest.mf
|--相關的類文件
注意:還應該在manifest.mf填寫內容,不會寫?照著一個已有的抄不就行了
Ⅱ 在linux下,要更新一個jar包里的xml文件,命令怎麼寫如何指定要替換的jar包中的路徑
沒有現成的程序,因為你說的這個自定義的xml沒有給出來,這種問題只能通過libxml2庫里的函數解析文本,通過判斷每級標簽的方式來判斷是不是符合你的格式
另外,虛機團上產品團購,超級便宜
Ⅲ Linux下如何在不解壓jar包查看或修改配置文
直接 vim *.jar,出現文件列表後,游標選擇文件按enter
Ⅳ Linux添加、修改、刪除jar包內文件
項目現場使用堡壘機等安全措施時,有時不能用FTP方式訪問Linux系統。如果此時需要修改配置文件,或增刪jar包內文件,只能通過Shell命令行進行操作。
首先需要Linux系統中裝有vim和zip程序,使用 vim xxx.jar 打開jar包:
首先建一個目錄,將jar包內的文件解壓到目錄中:
下面是分解動作~
然後,你得到了一個目錄。自行處理好需要添加、刪除的文件後,在目錄中執行:
最後你就得到了一個嶄新的jar包( ̄▽ ̄)/~
Ⅳ Linux jar包 後台運行
Linux 運行 jar 包命令如下:
方式一:
java -jar shareniu.jar
特點:當前 ssh 窗口被鎖定,可按 CTRL + C 打斷程序運行,或直接關閉窗口,程序退出
那如何讓窗口不鎖定?
方式二
java -jar shareniu.jar &
& 代表在後台運行。
特定:當前 ssh 窗口不被鎖定,但是當窗口關閉時,程序終止運行。
繼續改進,如何讓窗口關閉時,程序仍然運行?
方式三
nohup java -jar shareniu.jar &
nohup 意思是不掛斷運行命令,當賬戶退出或終端關閉時,程序仍然運行
當用 nohup 命令執行作業時,預設情況下該作業的所有輸出被重定向到 nohup.out 的文件中,除非另外指定了輸出文件。
方式四
nohup java -jar shareniu.jar >temp.txt &
解釋下 >temp.txt
command >out.file
command >out.file 是將 command 的輸出重定向到 out.file 文件,即輸出內容不列印到屏幕上,而是輸出到 out.file 文件中。
可通過 jobs 命令查看後台運行任務
jobs
那麼就會列出所有後台執行的作業,並且每個作業前面都有個編號。
如果想將某個作業調回前台控制,只需要 fg + 編號即可。
fg 23
查看某埠佔用的線程的 pid
netstat -nlp |grep :9181
原文作者:zhaozhangxiao
轉自鏈接:https://learnku.com/articles/67133
Ⅵ linux 中如何去更新maven中的某一個jar包 用什麼命令
如果是自己寫的,執行命令mvn compile就可以,如果是通過maven引入的,請修改pom.xml文件,<dependency>標簽,配置下jar包的版本就可以了
Ⅶ 如何在linux下執行jar文件
linux下執行jar文件方法:命令行下進入文件目錄,執行java-jarfile.jar即可,也可在桌面創建一個啟動器,在命令欄填寫相關的命令:java-jar/file路徑/file.jar,這樣在桌面雙擊即可打開該jar文件x0dx0ax0dx0a創建可執行的JAR文件包詳解:JAR文件就是JavaArchiveFile,顧名思意,它的應用是與Java息息相關的,是Java的一種文檔格式。JAR文件非常類似ZIP文件--准確的說,它就是ZIP文件,所以叫它文件包。JAR文件與ZIP文件唯一的區別就是在JAR文件的內容中,包含了一個META-INF/MANIFEST.MF文件,這個文件是在生成JAR文件的時候自動創建的.舉個例子,如果我們具有如下目錄結構的一些文件:x0dx0a==x0dx0a`--testx0dx0a`--Test.classx0dx0a把它壓縮成ZIP文件test.zip,則這個ZIP文件的內部目錄結構為:x0dx0atest.zipx0dx0a`--testx0dx0a`--Test.classx0dx0a如果我們使用JDK的jar命令把它打成JAR文件包test.jar,則這個JAR文件的內部目錄結構為:x0dx0atest.jarx0dx0a|--META-INFx0dx0a|`--MANIFEST.MFx0dx0a`--testx0dx0a`--Test.classx0dx0a創建可執行的JAR文件包,需要使用帶cvfm參數的jar命令,同樣以上述test目錄為例,命令如下:jarcvfmtest.jarmanifest.mftest,這里test.jar和manifest.mf兩個文件,分別是對應的參數f和m,其重頭戲在manifest.mf。因為要創建可執行的JAR文件包,光靠指定一個manifest.mf文件是不夠的,因為MANIFEST是JAR文件包的特徵,可執行的JAR文件包和不可執行的JAR文件包都包含MANIFEST。關鍵在於可執行JAR文件包的MANIFEST,其內容包含了Main-Class一項。這在MANIFEST中書寫格式如下:Main-Class:可執行主類全名(包含包名)x0dx0a例如,假設上例中的Test.class是屬於test包的,而且是可執行的類(定義了publicstaticvoidmain(String[])方法),那麼這個manifest.mf可以編輯如下:Main-Class:test.Test,這個manifest.mf可以放在任何位置,也可以是其它的文件名,只需要有Main-Class:test.Test一行,且該行以一個回車符結束即可。創建了manifest.mf文件之後,我們的目錄結構變為:x0dx0a==x0dx0a|--testx0dx0a|`--Test.classx0dx0a`--manifest.mfx0dx0a這時候,需要到test目錄的上級目錄中去使用jar命令來創建JAR文件包。也就是在目錄樹中使用==表示的那個目錄中,使用如下命令:jarcvfmtest.jarmanifest.mftestx0dx0a之後在==目錄中創建了test.jar,test.jar就是執行的JAR文件包。運行時只需要使用java-jartest.jar命令即可。x0dx0a需要注意的是,創建的JAR文件包中需包含完整的、與Java程序包結構對應的目錄結構。而Main-Class指定的類,也必須是完整的、包含包路徑的類名,如上例的test.Test;而且在沒有打成JAR文件包之前可以使用java來運行這個類,即在上例中javatest.Test是可以正確運行的(當然要在CLASSPATH正確的情況下)。