? ? ? ?把java程序打成war包。起先用zip命令打包,起先可以用,后來卻無法使用。今天找到一個更好的辦法。用jar命令,前提是要安裝jdk。
操作:
1、把當前目錄下的所有文件打包成game.war
jar -cvfM0 game.war ./
-c?? 創建war包
-v?? 顯示過程信息
-f
-M
-0?? 這個是阿拉伯數字,只打包不壓縮的意思
解壓game.war
jar -xvf game.war
解壓到當前目錄
2、linux解壓war包
可以用unzip命令
unzip project.war -d project
這樣就在當前目錄下解壓project.war到project目錄里面,參數-d的意思是創建project目錄
附:unzip其它參數說明
-x "文件列表" 解壓文件,但不包含文件列表中指定的文件
-t 測試壓縮文件有無損壞,并不解壓
-v 查看壓縮文件的詳細信息,具體包括壓縮文件中包含的文件大小、文件名和壓縮比等,并不解壓
-n 解壓時不覆蓋已經存在的文件
-o 解壓時覆蓋已經存在的文件,并且不要求用戶確認
-d 目錄名 把壓縮文件解壓到指定目錄下
同理zip命令也一樣:
-r 遞歸壓縮,將指定目錄下的所有文件以及子目錄全部壓縮
-d 從壓縮文件內刪除指定的文件
-i “文件列表” 只壓縮文件列表中的文件
-x “文件列表” 壓縮時排除文件列表中指定的文件
-u 更新文件到壓縮文件中
-m 將文件加入壓縮文件壓縮后,刪除原始文件,即把文件移到壓縮文件中
-F 嘗試修復損壞的壓縮文件
-T 檢查壓縮文件內的每個文件是否正確無誤
- 壓縮級別 壓縮級別是一個1~9的數字
范 例:
zip命令可以用來將文件壓縮成為常用的zip格式。unzip命令則用來解壓縮zip文件。
1. 我想把一個文件abc.txt和一個目錄dir1壓縮成為yasuo.zip:
# zip -r yasuo.zip abc.txt dir1
2.我下載了一個yasuo.zip文件,想解壓縮:
# unzip yasuo.zip
3.我當前目錄下有abc1.zip,abc2.zip和abc3.zip,我想一起解壓縮它們:
# unzip abc\?.zip
注釋:?表示一個字符,如果用*表示任意多個字符。
4.我有一個很大的壓縮文件large.zip,我不想解壓縮,只想看看它里面有什么:
# unzip -v large.zip
5.我下載了一個壓縮文件large.zip,想驗證一下這個壓縮文件是否下載完全了
# unzip -t large.zip
6.我用-v選項發現music.zip壓縮文件里面有很多目錄和子目錄,并且子目錄中其實都是歌曲mp3文件,我想把這些文件都下載到第一級目錄,而不是一層一層建目錄:
# unzip -j music.zip