love fish大鵬一曰同風(fēng)起,扶搖直上九萬里

          常用鏈接

          統(tǒng)計

          積分與排名

          friends

          link

          最新評論

          jar 轉(zhuǎn) exe 個人經(jīng)驗總結(jié)(轉(zhuǎn))

          jar 轉(zhuǎn) exe的工具很多,比較流行的有exe4j 、installanywhere(主要做安裝)、jsmooth。我在這里選擇了jsmooth。實際上jsmooth 和exe4j的操作都差不多,而jsmooth比exe4j還要小巧,我選擇jsmooth。
          制作分兩種情況,一種是將jre 和 exe一同發(fā)布,這樣你就可以不用考慮客戶機器上安裝jvm沒有了。一種是要求客戶機器上安裝有jre的情況。

          1. 先將要求客戶機上安裝有jre的情況:
          很多文章都喜歡從界面操作上開始講,而我認為從項目文件講就更簡單了。如下是我的jar轉(zhuǎn)exe的test.exe.jsmooth文件。用jsmooth直接打開 test.exe.jsmooth這個文件(至于界面上每一步該怎么設(shè)置都一目了然,全設(shè)置好了。),直接編譯就ok了。
          test.exe.jsmooth文件內(nèi)容如下:
          ?1?<?xml?version="1.0"?encoding="ISO-8859-1"?>
          ?2?<jsmoothproject>
          ?3?<JVMSearchPath>registry</JVMSearchPath>
          ?4?<JVMSearchPath>javahome</JVMSearchPath>
          ?5?<JVMSearchPath>jrepath</JVMSearchPath>
          ?6?<JVMSearchPath>jdkpath</JVMSearchPath>
          ?7?<JVMSearchPath>exepath</JVMSearchPath>
          ?8?<JVMSearchPath>jview</JVMSearchPath>
          ?9?<arguments></arguments>
          10?<currentDirectory>.</currentDirectory>
          11?<embeddedJar>true</embeddedJar>
          12?<executableName>test.exe</executableName>
          13?<iconLocation>Ico02?042.ico</iconLocation>
          14?<initialMemoryHeap>-1</initialMemoryHeap>
          15?<jarLocation>JavaApplication19.jar</jarLocation>
          16?<mainClassName>Client</mainClassName>
          17?<maximumMemoryHeap>-1</maximumMemoryHeap>
          18?<maximumVersion></maximumVersion>
          19?<minimumVersion></minimumVersion>
          20?<skeletonName>Windowed?Wrapper</skeletonName>
          21?<skeletonProperties>
          22?<key>Message</key>
          23?<value>This?program?needs?Java?to?run.
          24?Please?download?it?at?http://www.java.com</value>
          25?</skeletonProperties>
          26?<skeletonProperties>
          27?<key>URL</key>
          28?<value>http://www.java.com</value>
          29?</skeletonProperties>
          30?<skeletonProperties>
          31?<key>SingleProcess</key>
          32?<value>1</value>
          33?</skeletonProperties>
          34?<skeletonProperties>
          35?<key>Debug</key>
          36?<value>0</value>
          37?</skeletonProperties>
          38?</jsmoothproject>

          其中:
          (1).<
          arguments></arguments>表示運行參數(shù)。
          (2).
          <currentDirectory>.</currentDirectory>表示的是當(dāng)前目錄,那么你直接把要轉(zhuǎn)換的jar和test.exe.jsmooth放在同一個目錄。(我這里都是放在同一個目錄下)
          (3).<executableName>test.exe</executableName>表示生成exe的名字。(我沒有測試放在不同目錄下的結(jié)果,我不認為有必要做這個測試)。
          (4).<iconLocation>Ico02?042.ico</iconLocation>表示exe所使用的圖標。
          (5).<jarLocation>JavaApplication19.jar</jarLocation>表示要轉(zhuǎn)的jar文件。
          (6).<mainClassName>Client</mainClassName> 表示主類(7).<skeletonName>Windowed?Wrapper</skeletonName>表示的是運行時候,不需要帶dos控制臺窗口。對應(yīng)的是Console?Wrapper。

          直接保存test.exe.jsmooth文件就可以用。
          對于應(yīng)用的目錄結(jié)構(gòu)圖:
          21.jpg

          2.第2種情況,即帶jre的exe

          <?xml version="1.0" encoding="ISO-8859-1"?>
          <jsmoothproject>
          <JVMSearchPath>registry</JVMSearchPath>
          <JVMSearchPath>javahome</JVMSearchPath>
          <JVMSearchPath>jrepath</JVMSearchPath>
          <JVMSearchPath>jdkpath</JVMSearchPath>
          <JVMSearchPath>exepath</JVMSearchPath>
          <JVMSearchPath>jview</JVMSearchPath>
          <arguments></arguments>
          <bundledJVMPath>java</bundledJVMPath>
          <classPath>java\bin</classPath>
          <classPath>java\lib</classPath>
          <classPath>java\lib\rt.jar</classPath>
          <classPath>java\lib\javaws.jar</classPath>
          <currentDirectory>Test.exe</currentDirectory>
          <embeddedJar>true</embeddedJar>
          <executableName>Test.exe</executableName>
          ……后面同上例一樣。
          最重要的區(qū)別是這個綁定了java虛擬機,指定了classpath路徑。
          編譯時候,把java文件放在同一目錄下:
          22.jpg
          其中test.exe是生成的。
          簡單吧,編譯就生成了exe文件了。

          posted on 2007-03-12 12:02 liaojiyong 閱讀(3464) 評論(0)  編輯  收藏 所屬分類: Java

          主站蜘蛛池模板: 勃利县| 普宁市| 宜宾市| 偏关县| 玛曲县| 台前县| 南郑县| 泰顺县| 陆川县| 正宁县| 玛沁县| 曲沃县| 长海县| 金山区| 吉林省| 惠安县| 栖霞市| 化德县| 咸阳市| 保靖县| 鄢陵县| 武强县| 犍为县| 潢川县| 博客| 桃源县| 繁峙县| 普定县| 桦甸市| 仁寿县| 塘沽区| 安丘市| 兴仁县| 葫芦岛市| 南丹县| 科技| 武川县| 合肥市| 醴陵市| 田东县| 大渡口区|