熱點推薦:
您现在的位置: 電腦知識網 >> 編程 >> Java編程 >> Javascript >> 正文

將Java應用程序本地編譯為EXE的幾種方法

2013-11-23 17:55:43  來源: Javascript 

   從獲得一個TowerJ編譯器該編譯器可以將你的CLASS文件編譯成EXE文件
  
   利用微軟的SDKJava 所提供的jexegenexe創建EXE文件這個軟件可以從微軟的網站免費下載地址如下
  
  
  
  jexegen的語法如下
  
  jexegen /OUT:exe_file_name
  /MAIN:main_class_name main_class_file_nameclass
  [and other classes]
  
   Visual Cafe提供了一個能夠創建EXE文件的本地編譯器你需要安裝該光盤上提供的EXE組件
  
   使用InstallAnywhere創建安裝盤
  
   使用IBM AlphaWorks提供的一個高性能Java編譯器該編譯器可以從下面的地址獲得
  
  
  
   JET是一個優秀的Java語言本地編譯器該編譯器可以從這個網站獲得一個測試版本
  
  
  
   Instantiations公司的JOVE
  
  JOVE公司合並了以前的SuperCede一個優秀的本地編譯器現在SuperCede已經不復存在了
  
   JToEXE
  
  Bravo Zulu Consulting Inc開發的一款本地編譯器本來可以從該公司的網頁上免費下載的不過目前在該公司的主頁上找不到了
  
  公司主頁
  
  下面這個FTP上曾經有過這個軟件不知道現在是不是還在
  
  ftp:///pub/java/tools/jet
  
  jbuilder
  
  這個是Borland不公開的使用技巧能夠通過JBuilder來制作exe文件來啟動Java文件
  JBuilder並不支持本地編譯機制但是有一個隱藏的技巧可以讓你從可執行文件來啟動Java程序可以出現或者不出現console窗口想做到這些需要JBuilder的bin目錄下的這些文件:
  JBuilderexe
  JBuilderWexe (可選)
  nfig
  nfig
  JavaLauncherdll
  JBuilderexe是一個通用的可執行外殼文件用以啟動Java程序JBuilderWexe好像是javawexe一樣它把JBuilderexe包裝起來但是運行時候不顯示那個console的窗口使用這些文件的關鍵是文件名JBuilderexe查找一個文件叫nfig的配置文件裡面包含了運行Java程序的必須信息同樣的JBuilderWexe查找JBuilderexe來啟動不帶Console窗口的Java程序如果把JBuilderexe重命名為foo
  exefooexe將去尋找nfig配置文件同樣JBuilderWexe被重命名為fooWexe它會去尋找fooexe文件
  說到這裡聰明的讀者應該猜到怎樣利用JBuilderexe來啟動應用程序了只要把JBuilderexeJBuilerWexenfig改名成相應的文件名在nfig裡面指定主類和類路徑就能夠通過執行JBuilderexe(或者被改名後的exe文件)來啟動Java應用程序了下面是用本機為例
  Borland JBuilder 被安裝在E:\jbuilder\目錄下在E:\jbuilder\bin\下建立一個temp目錄然後把JBuilderexenfigJavaLauncherdllnfig四個文件拷貝到E:\jbuilder\bin\temp\目錄下然後在這個目錄下建立一個hello目錄在這個目錄下生成一個hellojava文件即E:\jbuilder\bin\temp\hello\hellojava文件
  file://hellojava/
  package hello;
  public class hello{
  public static void main(String s[]){
  Systemoutprintln(Hello Exe file!);
  }
  }
  編譯成class文件然後打開nfig文件作相應的修改
  在nfig裡面找到下面兩行
  # Start JBuilder using the its main class
  mainclass comborlandjbuilderJBuilder
  修改為
  # Start JBuilder using the its main class
  mainclass hellohello
  addpath E:/jbuilder/bin/temp/
  addpath命令是把目錄加入類路徑中這個命令和其它config裡面可以識別的命令可以在JBuilder/bin目錄下的config_readmetxt裡面找到詳細說明
  然後將nfig裡面的javapath修改成相對的路徑例如原來是
  javapath /jdk/bin/java
  修改成
  javapath //jdk/bin/java
  最後
  將JBuilderexenfig修改成所需要的文件名例如fooexe和nfig文件
  現在執行fooexe文件
  至此通過修改JBuilder來使用exe文件啟動自己的Java應用程序已經完成了
  但是好玩的地方並不在這個地方下面的小技巧可能更有趣將Jar文件打包進入exe文件!
  假設利用上面的文件生成hellojar包
  jar cvf hellojar hello\*class
  然後將jar包附加到JBuilderexe後面去
  copy /b \JBuilderexe+hellojar fooexe
  在nfig(nfig)文件裡面把前面加入的類路徑去掉並加入下面的路徑
  addpath E:/jbuilder/bin/temp/fooexe
  然後執行fooexe
  看到了麼?一個含jar包的exe文件被執行了!
  這個過程的大致原理是exe文件的重要信息都在文件頭部所以把亂七八糟的東西放exe文件尾部是不要緊的而jar/zip文件的重要信息是在文件尾部的這樣它們兩不相干能夠容易的被執行
  請注意讀者如果使用這個功能得自己承擔可能帶來的風險因為Borland對這個功能不提供官方的支持!
  
  

From:http://tw.wingwit.com/Article/program/Java/Javascript/201311/25373.html
    推薦文章
    Copyright © 2005-2013 電腦知識網 Computer Knowledge   All rights reserved.