若要產生一個名為 cal.jar 的可執行jar檔案:(檔案名稱可以是任意合法名字)
(這是我認為簡單實用的一種方法,還有很多別的方法在此就不介紹了)
第一 把程式產生的所有位元組碼檔案(即.class檔案)放在同一個目錄下(如:D:/chat/).
第二 在該目錄下建立一個manifest.mf檔案,檔案內容格式如下(劃線中內容):
manifest.mf檔案中的格式:
--------------------------------
Main-Class: calDemo
--------------------------------
注意: calDemo代表主類名(即要啟動並執行類名,只能有一個,不要副檔名)
Main與Class中間不是底線,而是虛線
Main-Class:與calDemo中間必須要有空格
Main-Class: calDemo之後必須要斷行符號
檔案中還可以加入一些其他資訊如:(先不要加,以免出錯)
--------------------------------------------
Manifest-Version: 1.0
Created-By: 1.4.1_02 (Sun Microsystems Inc.)
--------------------------------------------
然後用jar命令產生可執行檔jar檔案,例如:
(執行該命令前先要轉到該目錄下 D:/chat/ )
jar cvfm cal.jar manifest.mf *.class
jar用法:(僅供參考,初學者可跳過這部分內容)
jar {ctxu}[vfm0Mi] [jar-檔案] [manifest-檔案] [-C 目錄] 檔案名稱 ...
選項:
-c 建立新的存檔
-t 列出存檔內容的列表
-x 展開存檔中的命名的(或所有的〕檔案
-u 更新已存在的存檔
-v 產生詳細輸出到標準輸出上
-f 指定封存檔案名
-m 包含來自標明檔案的標明資訊
-0 只儲存方式;未用ZIP壓縮格式
-M 不產生所有項的清單(manifest〕檔案
-i 為指定的jar檔案產生索引資訊
-C 改變到指定的目錄,並且包含下列檔案:
如果一個檔案名稱是一個目錄,它將被遞迴處理。
清單(manifest〕檔案名稱和封存檔案名都需要被指定,按'm' 和 'f'標誌指定的相同順序。
樣本1:將兩個class檔案存檔到一個名為 'classes.jar' 的封存檔案中:
jar cvf classes.jar Foo.class Bar.class
樣本2:用一個存在的清單(manifest)檔案 'mymanifest' 將 foo/ 目錄下的所有
檔案存檔到一個名為 'classes.jar' 的封存檔案中:
jar cvfm classes.jar mymanifest -C foo/ .