jar 常用操作


查看 jar 包中的文件列表,並進行重定向

jar -tvf a.jar > a.txt 

更新文件到 jar 中,目錄需對應

jar -uf a.jar com/a.class 
  • a.class 文件在 jar 包中的目錄是 com/a.class。
  • a.class 文件在本地路徑,相對 a.jar 包,也是 com/a.class。
-rw-r--r--. 1 root root 5418 Aug 9 23:59 a.jar drwxr-xr-x. 3 root root 19 Oct 10 01:58 com 

增加文件到 jar 中,目錄需對應

與修改一致,jar 中原來沒有的目錄,會自動創建。

jar -uf a.jar com/test/a.class jar -tvf a.jar > a.txt 

查看 a.txt 內容會發現 jar 包中自動創建了 com/test/ 目錄。

JAR 命令

命令 說明
-c 在標准輸出上創建新歸檔或空歸檔。
-C 在執行 jar 命令期間更改目錄。jar -uf a.jar -C classes * 將 classes 目錄內的所有文件加到 a.jar 中,但不添加類目錄本身。
-f 第二個參數指定要處理的 jar 文件(文件列表中的第一個元素是要創建或訪問的存檔文件名字)。在 -c (創建)情形中,第二個參數指的是要創建的 jar 文件的名稱(不是在標准輸出上)。在 -t (表(或 -x (抽取)這兩種情形中,第二個參數指定要列出或抽取的 jar 文件。
-i 應提供的索引信息。
-m 包括指定的現有清單文件中的清單信息(文件列表的第二個元素是外部的清單文件名)。用法舉例:jar cmf myManifestFile myJarFile *.class
-M 不創建項目的清單文件。
-t 在標准輸出上列出內容表(存檔文件的內容應制成表格)。
-u 通過添加文件或更改清單來更新現有的 JAR 文件。例如:jar -uf a.jar a.class 將文件 a.class 添加到現有的 JAR 文件 a.jar 中,而 jar umf manifest foo.jar 則用 manifest 中的信息更新 a.jar 的清單。
-v 在標准錯誤輸出設備上生成長格式的輸出結果(當工具執行時顯示的詳細信息)。
-x[file] 從標准輸入提取所有文件,或只提取指定的文件。如果省略了 file,則提取所有文件;否則只提取指定文件。
-0 只儲存,不進行 ZIP 壓縮。


作者:羽傑
鏈接:https://www.jianshu.com/p/86c744e6bf9f
來源:簡書
簡書著作權歸作者所有,任何形式的轉載都請聯系作者獲得授權並注明出處。


免責聲明!

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



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