在线看毛片视频-国产免费av在线-欧美日韩一区二区三区-国产成人无码av在线播放无广告-亚洲人va欧美va人人爽-国产第一草草-西班牙黄色片-四虎在线网站8848-最新av片免费网站入口-东京热无码中文字幕av专区-日本大人吃奶视频xxxx-欧美精品一区二区三区四区五区-国产片天天弄-国产免费内射又粗又爽密桃视频-欧美爱爱网站-日韩v欧美

當前位置:雨林木風下載站 > 技術開發教程 > 詳細頁面

如何把java程序編譯成.exe文件(就是制作可執行的JAR文件包)

如何把java程序編譯成.exe文件(就是制作可執行的JAR文件包)

更新時間:2022-05-14 文章作者:未知 信息來源:網絡 閱讀次數:

作者:邊城狂人

常常在網上看到有人詢問:如何把 java 程序編譯成 .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.class

2. 創建可執行的 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 正確的情況下)。


溫馨提示:喜歡本站的話,請收藏一下本站!

本類教程下載

系統下載排行

在线看毛片视频-国产免费av在线-欧美日韩一区二区三区-国产成人无码av在线播放无广告-亚洲人va欧美va人人爽-国产第一草草-西班牙黄色片-四虎在线网站8848-最新av片免费网站入口-东京热无码中文字幕av专区-日本大人吃奶视频xxxx-欧美精品一区二区三区四区五区-国产片天天弄-国产免费内射又粗又爽密桃视频-欧美爱爱网站-日韩v欧美
  • <li id="86scu"><menu id="86scu"></menu></li>
    <li id="86scu"></li>
    <button id="86scu"></button>
  • <s id="86scu"></s><button id="86scu"><menu id="86scu"></menu></button>
  • 成年人深夜视频| 午夜啪啪免费视频| www.五月天色| www插插插无码视频网站| 国产亚洲视频一区| 欧美男女交配视频| 最新中文字幕2018| 国产wwwxx| 青青在线视频免费| 午夜欧美福利视频| 成 人 黄 色 小说网站 s色| 男女啪啪免费观看| 五月天激情播播| 妞干网在线免费视频| 男人靠女人免费视频网站| 91蝌蚪视频在线| 超碰在线人人爱| 波多野结衣家庭教师视频| bt天堂新版中文在线地址| 亚洲一区二区在线视频观看| 欧美黑人又粗又大又爽免费| 黄色成人在线免费观看| 成人免费在线视频播放| 国产卡一卡二在线| 日韩精品在线视频免费观看| 最新天堂在线视频| 久国产精品视频| 少妇一级淫免费放| 999在线观看| 高清av免费看| 粉色视频免费看| 国产成人美女视频| 亚洲黄色av网址| 亚洲狼人综合干| 精品久久久久久无码国产| 色国产在线视频| 在线播放黄色av| 人妻无码一区二区三区四区| 97中文字幕在线| 久久国产乱子伦免费精品| 日日碰狠狠躁久久躁婷婷| 少妇激情一区二区三区| 亚洲日本黄色片| www.99riav| 日韩精品一区二区三区久久| 国产一区二区在线免费播放| 三级视频中文字幕| 六月婷婷激情网| 福利在线一区二区| 88av.com| 污视频网址在线观看| 无码日本精品xxxxxxxxx| av动漫在线看| 992tv成人免费观看| 国产va亚洲va在线va| 久久九九国产视频| 日本熟妇人妻xxxx| 大桥未久一区二区| 在线免费av播放| 免费男同深夜夜行网站 | 91成人在线观看喷潮教学| 美女网站视频黄色| 丰满爆乳一区二区三区| 亚洲高潮无码久久| 欧美性受xxxx黒人xyx性爽| av免费网站观看| 精品一卡二卡三卡| 日韩精品 欧美| 日本丰满大乳奶| 欧美精品色视频| 亚洲成人手机在线观看| 亚洲天堂av线| 少妇黄色一级片| 粗暴91大变态调教| 国产成人久久婷婷精品流白浆| 欧美黄网在线观看| 青青视频免费在线观看| 佐佐木明希av| 超级碰在线观看| 国产一区二区三区在线免费| 潘金莲一级淫片aaaaa免费看| 奇米视频7777| 小说区视频区图片区| 日本一道在线观看| www国产免费| 黄色a级片免费看| 91黄色在线看| 成人免费观看毛片| 久久久久久久片| 五月六月丁香婷婷| 99精品一区二区三区的区别| 九九久久九九久久| 国产精品333| 中文字幕一区二区三区四区在线视频| 欧美综合在线观看视频| 欧美精品成人网| 国产一二三四在线视频| 亚洲va在线va天堂va偷拍| 日韩a一级欧美一级| 嫩草影院中文字幕| 热久久精品免费视频| 日本黄色a视频| 人妻夜夜添夜夜无码av| 久久久久国产一区| 免费在线看黄色片| 香蕉视频999| 久久久久久久久久伊人| 中文字幕在线导航| 男人c女人视频| 50路60路老熟妇啪啪| 婷婷视频在线播放| 男人操女人逼免费视频| 一级片免费在线观看视频| 欧美视频在线观看视频| 色播五月激情五月| av高清在线免费观看| 日韩成人av免费| 日本精品一区二区三区四区| 天堂av免费看| 色乱码一区二区三区在线| 久激情内射婷内射蜜桃| 青青青在线视频播放| 欧美 另类 交| 国产九九在线视频| 少妇高潮喷水久久久久久久久久| 国产一区二区在线免费播放| 精品这里只有精品| 国产日韩亚洲欧美在线| 午夜av中文字幕| 国产av人人夜夜澡人人爽| 分分操这里只有精品| 操人视频免费看| 啊啊啊国产视频| 国产不卡一区二区视频| 青青在线视频免费观看| 国产美女视频免费| 91制片厂免费观看| 午夜av中文字幕| 亚欧激情乱码久久久久久久久| 怡红院av亚洲一区二区三区h| 青青在线免费视频| 偷拍盗摄高潮叫床对白清晰| 久久久久久久久久毛片| 亚洲免费黄色网| 欧洲美女亚洲激情| 欧美国产日韩另类| 中文字幕综合在线观看| 在线无限看免费粉色视频| 91香蕉视频免费看| 成年丰满熟妇午夜免费视频| 国产亚洲视频一区| 色天使在线观看| 免费成人深夜夜行网站视频| 一二三在线视频| 黄色一级视频在线播放| 丝袜人妻一区二区三区| 亚洲欧洲日产国码无码久久99| 99999精品视频| 中文字幕在线观看第三页| 在线观看岛国av| 永久免费网站视频在线观看| 日韩一级免费看| 美女福利视频在线| 日本免费色视频| h无码动漫在线观看| 欧美 日韩 亚洲 一区| 天天爽天天爽夜夜爽| 三级网在线观看| 久久久久久免费看| 亚洲人成无码www久久久| 污视频网址在线观看| 青青草视频国产| 777米奇影视第四色| 无尽裸体动漫2d在线观看| 小泽玛利亚av在线| 亚洲福利精品视频| 国产欧美久久久久| 男女男精品视频站| 色婷婷777777仙踪林| 大肉大捧一进一出好爽视频| 亚洲天堂2018av| 国产免费黄色小视频| 午夜久久福利视频| 国产91美女视频| 99日在线视频| 精品国产成人av在线免| 警花观音坐莲激情销魂小说| 国产日韩一区二区在线| 青青草原网站在线观看| 久久久精品麻豆| 欧美 日韩 国产一区| 日本成人在线不卡| 九一精品久久久| av网站在线不卡| 少妇无码av无码专区在线观看| 夜夜爽久久精品91| 亚洲图色中文字幕| www.99在线| 日本美女高潮视频| 亚洲自偷自拍熟女另类|