国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 學院 > 開發設計 > 正文

java之生成jar包

2019-11-14 21:14:42
字體:
來源:轉載
供稿:網友
java之生成jar包

Java編寫的application程序是否能夠最終形成一個類似于exe一樣的可執行文件,難道就只能用命令行運行?---------------------------------------------------------------通常有兩種,一種是制作一個可執行的JAR文件包,然后就可以像.chm文檔一樣雙擊運行了;而另一種是使用JET來進行編譯。但是JET是要用錢買的,而且據說JET也不是能把所有的Java程序都編譯成執行文件,性能也要打些折扣。所以,使用制作可執行JAR 文件包的方法就是最佳選擇了,何況它還能保持Java的跨平臺特性。下面就來看看什么是JAR文件包吧:1. JAR文件包JAR文件就是Java Archive File,顧名思意,它的應用是與Java息息相關的,是Java的一種文檔格式。JAR文件非常類似Zip文件——準確的說,它就是ZIP文件,所以叫它文件包。JAR文件與ZIP文件唯一的區別就是在JAR文件的內容中,包含了一個META-INF/MANIFEST.MF文件,這個文件是在生成JAR文件的時候自動創建的。舉個例子,如果我們具有如下目錄結構的一些文件:  ==-- test-- Test.class把它壓縮成ZIP文件test.zip,則這個ZIP文件的內部目錄結構為:  test.zip  `-- test    `-- Test.class如果我們使用JDK的jar命令把它打成JAR文件包test.jar,則這個JAR文件的內部目錄結構為: test.jar  |-- META-INF  |  `-- MANIFEST.MF  `-- test    `--Test.class2. 創建可執行的JAR文件包制作一個可執行的JAR文件包來發布你的程序是JAR文件包最典型的用法。

Java程序是由若干個.class文件組成的。這些.class文件必須根據它們所屬的包不同而分級分目錄存放;運行前需要把所有用到的包的根目錄指定給CLASSPATH環境變量或者java命令的-cp參數;運行時還要到控制臺下去使用java命令來運行,如果需要直接雙擊運行必須寫Windows的批處理文件(.bat)或者linux的Shell程序。因此,許多人說,Java是一種方便開發者苦了用戶的程序設計語言。其實不然,如果開發者能夠制作一個可執行的JAR文件包交給用戶,那么用戶使用起來就方便了。在Windows下安裝JRE(Java Runtime Environment)的時候,安裝文件會將.jar文件映射給javaw.exe打開。那么,對于一個可執行的JAR文件包,用戶只需要雙擊它就可以運行程序了,和閱讀.chm文檔一樣方便(.chm 文檔默認是由hh.exe打開的)。那么,現在的關鍵,就是如何來創建這個可執行的JAR文件包。創建可執行的JAR文件包,需要使用帶cvfm參數的jar命令,同樣以上述test目錄為例,命令如下:jar cvfm test.jar manifest.mf test這里test.jar和manifest.mf兩個文件,分別是對應的參數f和m,其重頭戲在manifest.mf。因為要創建可執行的JAR文件包,光靠指定一個manifest.mf文件是不夠的,因為MANIFEST是JAR文件包的特征,可執行的JAR文件包和不可執行的JAR文件包都包含MANIFEST。關鍵在于可執行JAR文件包的MANIFEST,其內容包含了 Main-Class一項。這在MANIFEST中書寫格式如下:Main-Class: 可執行主類全名(包含包名)例如,假設上例中的Test.class是屬于test包的,而且是可執行的類(定義了 public static void main(String[]) 方法),那么這個manifest.mf可以編輯如下:Main-Class: test.Test <回車>這個manifest.mf可以放在任何位置,也可以是其它的文件名,只需要有Main-Class: test.Test 一行,且該行以一個回車符結束即可。創建了manifest.mf文件之后,我們的目錄結構變為:  ==   |-- test   |  `-- Test.class  `-- manifest.mf這時候,需要到test目錄的上級目錄中去使用jar命令來創建JAR文件包。也就是在目錄樹中使用“==”表示的那個目錄中,使用如下命令:jar cvfm test.jar manifest.mf test之后在“==”目錄中創建了test.jar,這個test.jar就是執行的JAR文件包。運行時只需要使用java -jar test.jar 命令即可。需要注意的是,創建的JAR文件包中需要包含完整的、與Java程序的包結構對應的目錄結構,就像上例一樣。而 Main-Class 指定的類,也必須是完整的、包含包路徑的類名,如上例的test.Test;而且在沒有打成JAR文件包之前可以使用java <類名> 來運行這個類,即在上例中 java test.Test 是可以正確運行的 (當然要在 CLASSPATH 正確的情況下)。


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 樟树市| 天津市| 工布江达县| 盐池县| 和田市| 涞源县| 陆丰市| 南阳市| 四川省| 中江县| 禹州市| 普宁市| 库伦旗| 灵台县| 鹤壁市| 大田县| 分宜县| 布拖县| 平山县| 南郑县| 东方市| 浙江省| 雅江县| 准格尔旗| 革吉县| 塔城市| 出国| 舟山市| 沂水县| 上杭县| 洮南市| 南康市| 台湾省| 中江县| 循化| 长岭县| 建瓯市| 古蔺县| 平果县| 高尔夫| 治多县|