当前位置:  技术问答>java相关

jbuilder怎样生成可执行文件?

    来源: 互联网  发布时间:2015-09-30

    本文导语:  难道只能生成.class文件嘛? 我想生成脱离ie的.exe文件 | 下面是我搜集的,在论坛里的。 很简单的,在任何.bat中加入: path=d:jdk1.3bin. java -jar your.jar 存盘就行了,我的系统是win2000,我就是这么做的 这...

难道只能生成.class文件嘛?
我想生成脱离ie的.exe文件

|
下面是我搜集的,在论坛里的。
很简单的,在任何.bat中加入:
path=d:jdk1.3bin.
java -jar your.jar
存盘就行了,我的系统是win2000,我就是这么做的



这个是Borland不公开的使用技巧,能够通过JBuilder来制作exe文件来启动Java文件。 

JBuilder并不支持本地编译机制。但是有一个隐藏的技巧可以让你从可执行文件来启动Java 

程序,可以出现或者不出现console窗口。想做到这些,需要JBuilder的bin目录下的这些文 

件: 

JBuilder.exe 

JBuilderW.exe (可选) 

JBuilder.config 

jdk.config 

JavaLauncher.dll 

“JBuilder.exe”是一个通用的可执行外壳文件,用以启动Java程序,”JBuilderW.exe“ 

好像是javaw.exe一样,它把”JBuilder.exe”包装起来,但是运行时候不显示那个conso 

le的窗口。使用这些文件的关键是文件名。“JBuilder.exe”查找一个文件叫”JBuilder.c 

onfig”的配置文件,里面包含了运行Java程序的必须信息。同样的”JBuilderW.exe”查找 

”JBuilder.exe”来启动不带Console窗口的Java程序。如果把JBuilder.exe重命名为”foo 

.exe”,那”foo.exe”将去寻找”foo.config”配置文件,同样”JBuilderW.exe”被重命 

名为”fooW.exe”,它会去寻找”foo.exe”文件。 

说到这里,聪明的读者应该猜到怎样利用JBuilder.exe来启动应用程序了。只要把JBui 

lder.exe,JBuilerW.exe,JBuilder.config改名成相应的文件名,在JBuilder.config里面指 

定主类和类路径,就能够通过执行JBuilder.exe(或者被改名后的exe文件)来启动Java应用程 

序了。下面是用本机为例。 

Borland JBuilder 5被安装在E:jbuilder5目录下,在E:jbuilder5bin下建立一个temp 

目录,然后把JBuilder.exe,JBuilder.config,JavaLauncher.dll,jdk.config四个文件 

拷贝到E:jbuilder5bintemp目录下,然后在这个目录下建立一个hello目录,在这个目录 

下生成一个hello.java文件,即E:jbuilder5bintemphellohello.java文件, 

//hello.java 

package hello; 

public class hello{ 

    public static void main(String s[]){ 

        System.out.println("Hello, Exe file!"); 

    } 



编译成class文件,如图18-14: 

图18-14 编译所有java文件 

然后打开Jbuilder.config文件,作相应的修改: 

在JBuilder.config里面找到下面两行 

# Start JBuilder using the its main class 

mainclass com.borland.jbuilder.JBuilder 

修改为 

# Start JBuilder using the its main class 

mainclass hello.hello 

addpath E:/jbuilder5/bin/temp/ 

addpath命令是把目录加入类路径中,这个命令和其它config里面可以识别的命令可以在 

JBu 

ilder/bin目录下的config_readme.txt里面找到详细说明。 

然后将jdk.config里面的javapath修改成相对的路径,例如原来是 

javapath ../jdk1.3/bin/java 

修改成 

javapath ../../jdk1.3/bin/java 

最后 

将JBuilder.exe,JBuilder.config修改成所需要的文件名,例如foo.exe和foo.config文件。 

现在执行foo.exe文件 

可以看到执行的结果如图18-15: 

图18-15 执行foo.exe后的运行结果 

至此,通过修改JBuilder来使用exe文件启动自己的Java应用程序已经完成了。 

但是好玩的地方并不在这个地方,下面的小技巧可能更有趣,将Jar文件打包进入exe文件! 

假设利用上面的文件,生成hello.jar包,执行过程和运行结果如图18-16: 

jar cvf hello.jar hello*.class 

图18-16 将类文件打包成exe文件 

然后将jar包附加到JBuilder.exe后面去,执行过程如图18-17: 

copy /b ..JBuilder.exe+hello.jar foo.exe 

图18-17 将jar文件转化成exe文件 

在foo.config(JBuilder.config)文件里面把前面加入的类路径去掉,并加入下面的路径: 

addpath E:/jbuilder5/bin/temp/foo.exe 

然后执行,执行结果如图18-18: 

foo.exe 

图18-18 变成exe文件的jar文件执行结果 

看到了么?一个含jar包的exe文件被执行了! 

这个过程的大致原理是:exe文件的重要信息都在文件头部,所以把乱七八糟的东西放exe文 

件尾部是不要紧的;而jar/zip文件的重要信息是在文件尾部的,这样它们两不相干,能够容 

易的被执行。 

请注意:读者如果使用这个功能,得自己承担可能带来的风险,因为Borland对这个功能不 

提供官方的支持!


另外可以下载一个叫做Excelsior JET的软件,用jdk1.4配合它的2.5版,可以将.class文件或java的工程转化为.exe文件.有需要的可以找我要,我的qq是
8844755,我的e-mail是:chch771203@163.com.

|
不可能脱离JVM

    
 
 

您可能感兴趣的文章:

  • 用JBuilder能将java程序生成exe可执行文件吗?如何生成?
  • JBuilder下怎样生成可执行文件?
  • 用JBuilder生成exe文件,运行出现问题
  • JBUILDER7生成可执行文件?
  • 菜鸟以前学过delphi,现在想学jbuilder,下载了一个jbuilder4.0用了一下,不知怎么生成exe,如果不生成exe,那开发出的东西怎么用啊?不要
  • jbuilder7里如何实现生成jar文件与project无关
  • 关于JBuilder4的IIOP生成问题
  • JBUILDER中,生成了一个EJB,该怎么运行?
  • 在jbuilder7中怎样自动生成get和色set方法
  • jbuilder7里生成的UML怎样导出.
  • 我用JBUILDER生成的*.class文件怎么在JDK环境下运行?
  • 用javamail做了一个application,在jBuilder中很好,可是生成jar后,却不能单独运行,why?
  • 怎么用jbuilder为一个RMI类生成代码存根?答对马上给分!
  • 如何用jbuilder生成一个jar文件?
  • 刚才看到用jbuilder可生成exe文件,请问各位怎么生成exe?
  • 为什么用JBUILDER生成的HTML文件打开时提示找不到CLASS类。但是这CLASS 跟它在同一目录下?
  • Jbuilder里怎么添加新的image,就象建立新工程的时候生成的打开图标一样?
  • 为什么我用jbuilder7生成的.exe文件运行时居然需要jre??这也叫什么??
  • 那位用JBUILDER3的向导做过APPLET,我做了几个但在IE里无法执行,错误百出,那位能谈谈注意事项!! iis7站长之家
  • 请问:我用jbuilder6.0生成ejb为什么说没有javax.ejb.*;
  • 我不知道怎么才能用JBuilder写的窗口变成个可执行文件
  • 如何在Jbuilder中生成win32可执行程序.
  • Jbuilder4 中如何执行(再那里) RMI 创建根与干
  • jbuilder7.0的可执行文件真的不用jdk来实现吗?
  • 为什么我在jbuilder中生成的jar文件不能执行?
  • 用jbuilder7编写成功运行正常的程序在用jdk中java命令执行出错,请帮忙!
  • 那位用JBUILDER3的向导做过APPLET,我做了几个但在IE里无法执行,错误百出,那位能谈谈注意事项!!
  • JBUILDER如何执行ORACLE的储存过程
  • win2000+jbuilder6+oracle817编出的程序,在win2000下执行很好,在win98下却访问不了oracle数据库
  • JBuilder4里面把程序输出为application的.jar可执行文件中的问题!!
  • 如何将JAVA程序从Jbuilder中导出为可执行文件?100分
  •  
    本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
    本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。












  • 相关文章推荐
  • jbuilder7突然打不开,unable to open jbuilder.congif??????????
  • JBuilder6 或JBuilder7如何注册?
  • 用jbuilder 编写的appliction 程序,如何独立于jbuilder 编译器之外运行?
  • JBuilder 6 在 winxp 下使用微软拼音输入法,输入中文。出现不正常。jbuilder.死锁
  • 谁有JBuilder的补丁,或是第三方控件,能完善一下JBuilder的功能的???
  • 在JBuilder中写了一个程序,脱离了JBuilder怎么运行?
  • 为什么Jbuilder 3可以编译通过的问题再Jbuilder 6下编译通不过了
  • 请问jbuilder7.0会不会比jbuilder6好啊?哪里有下载的?
  • 关于用Jbuilder进行程序调试?(用过Jbuilder的请发言)
  • jbuilder7 or jbuilder6 download adress?
  • 高分求助!偶公司要买jbuilder8 !请问买jbuilder8有包含哪些组件或工具?
  • 请问那里有jbuilder7或jbuilder6的电子书籍下载?
  • 请问那有jbuilder7的enterprise,borland上的jbuilder 7 enterprise trial是吗?
  • 小弟我正想学习Java,打算使用JBuilder,不知哪位前辈肯介绍一下JBuilder,用的人多不多?
  • 除了发布虚拟机外,发布JBuilder应用程序应发布我的哪些文件?怎样脱离JBuilder环境?
  • 新手请教:unix下能用Jbuilder开发吗?或者Jbuilder开发的程序在unix运行?
  • 我手动删除了jbuilder6自带的jdk,如何才能让jbuilder用我其他地方的jdk呀?
  • 我在jbuilder4.0中编的applet程序在jbuilder3.5中为何不能运行
  • 哪位能介绍一下JBuilder7有哪些优点,我为什么应该从JBuilder6换成7?
  • 如何脱离jbuilder 环境。用jbuilder熟悉的朋友帮忙。


  • 站内导航:


    特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

    ©2012-2021,,E-mail:www_#163.com(请将#改为@)

    浙ICP备11055608号-3