1. 打包
jar -xvf project.war /project_a
-c 創建war包
-v 顯示過程信息
-f 指定 JAR 檔案名,通常這個參數是必須的
-M 不產生所有項的清單(MANIFEST〕檔,此參數會忽略 -m 參數
-0 這個是阿拉伯數字,只打包不壓縮的意思
2. 特定檔案加入JAR檔
jar uf efiling.jar BOOT-INF\classes\application-prod.yml
3. 解壓到當前目錄
jar -cvfM0 project.war project
4. 解壓縮特定檔案
jar xf project.jar BOOT-INF\classes\application-prod.yml
- jar 命令詳解:
使用不帶任何的 jar 命令我們可以看到 jar 命令的用法如下:
jar {ctxu}[vfm0M] [jar-文件] [manifest-檔] [-C 目錄] 檔案名 ...
其中 {ctxu} 是 jar 命令的子命令,每次 jar 命令只能包含 ctxu 中的一個,它們分別表示:
-c 創建新的 JAR 檔包
-t 列出 JAR 文件包的內容列表
-x 展開 JAR 檔包的指定檔或者所有檔
-u 更新已存在的 JAR 文件包 (添加文件到 JAR 文件包中)
特別注意,在參數的下達中, c/x/t/u 僅能存在一個!不可同時存在!
因為不可能同時壓縮與解壓縮。
-z :是否同時具有 gzip 的屬性?亦即是否需要用 gzip 壓縮?
-j :是否同時具有 bzip2 的屬性?亦即是否需要用 bzip2 壓縮?
-v :壓縮的過程中顯示文件!這個常用,但不建議用在背景執行過程!
-f 指定 JAR 檔案名,通常這個參數是必須的
請留意,在 f 之後要立即接檔名喔!不要再加參數!
『 tar -zcvPf tfile sfile』才對喔!
-p :使用原文件的原來屬性(屬性不會依據使用者而變)
-P :可以使用絕對路徑來壓縮!
-N :比後面接的日期(yyyy/mm/dd)還要新的才會被打包進新建的檔中!
–exclude FILE:在壓縮的過程中,不要將 FILE 打包!
-m 指定需要包含的 MANIFEST 清單檔
-0 只存儲,不壓縮,這樣產生的 JAR 檔包會比不用該參數產生的體積大,但速度更快
-M 不產生所有項的清單(MANIFEST〕檔,此參數會忽略 -m 參數
[jar-檔] 即需要生成、查看、更新或者解開的 JAR 檔包,它是 -f 參數的附屬參數
[manifest-文件] 即 MANIFEST 清單文件,它是 -m 參數的附屬參數
[-C 目錄] 表示轉到指定目錄下去執行這個 jar 命令的操作。它相當於先使用 cd 命令轉該目錄下再執行不帶 -C 參數的 jar 命令,它只能在創建和更新 JAR 文件包的時候可用。
檔案名 ... 指定一個檔/目錄列表,這些檔/目錄就是要添加到 JAR 檔包中的檔/目錄。如果指定了目錄,那麼 jar 命令打包的時候會自動把該目錄中的所有檔和子目錄打入包中。
0 意見:
張貼留言