Java开发网 Java开发网
注册 | 登录 | 帮助 | 搜索 | 排行榜 | 发帖统计  

您没有登录

» Java开发网 » Java SE 综合讨论区  

按打印兼容模式打印这个话题 打印话题    把这个话题寄给朋友 寄给朋友    该主题的所有更新都将Email到你的邮箱 订阅主题
flat modethreaded modego to previous topicgo to next topicgo to back
作者 Re:怎样将java写的程序变成exe文件!!!! [Re:cchuier]
Jove



CJSDN高级会员


发贴: 1228
积分: 194
于 2004-06-03 18:43 user profilesend a private message to usersearch all posts byselect and copy to clipboard. 
ie only, sorry for netscape users:-)add this post to my favorite list
不用这么气冲冲的问问题,这里毕竟不是收费的技术支持站点。大家都没有这个义务来回答你。

可以把普通的Java程序做成真正的exe,也就是单一个exe就可以在没有安装JVM的机器上运行。
这样的工具常见的有JET和gcj.前者是收费的,而且做出来的exe还是需要一堆dll
我比较推荐使用gcj. http://www.thisiscool.com/gcc_mingw.htm
他有windows和Linux版,直接下载zip包,不需要安装,里面有不少例子,一些build的批处理文件。

从原理来说gcj自己实现了JVM规范,也就是你编写一个HelloWorld.java,其中的main方法为System.out.println("foo");
当使用gcj把它做成exe(大约2M),运行这个exe时,会启动里面的一个小型jvm,在这上面跑HelloWorld
//曾有人把整个eclipse ide用gjc做成了linux gtk下的native程序

至于图标,我一年多前用gcj时似乎不支持,不过好像有不少win32的程序可以抽取和更改exe的图标

其实,把Java做成纯exe实在是 吃力不讨好 。 有很多限制,文件又大

我比较倾向另几种做法:

. 使用InstallAnywhere等工具,制作一个exe的安装包
用户可以选择使用他机器上的JRE或是这个安装包内的JRE来运行程序
这是很常见的一种做法,如JBuilder就是这么做的。
这样的好处是不要求对方机器上装有JRE,而且你原来的程序不需要任何改动。
InstallAnywhere中一个压缩的JRE大概是8M

. 制作成可执行的jar,也就是在META-INF的MANIFEST文件制定Main-Class
可以通过命令行java -jar jarfile.jar来执行,windows默认的把*.jar使用javaw -jar打开,所以有些机器上可以直接双击jar运行。

. 制作伪exe,其实和上一种做法是一样的,只不过做成exe,调用系统的java.exe来运行它,这样的工具有nativeJ,exe4j等

btw,
像JET/gcj这样的技术是很先进的,.NET在运行机制上和Java类似,但到现在还是没有成熟的做成真正exe的工具
一定程度上也说明微软对.NET的信心,以及把基于运行时的软件做成纯exe的意义不大

刚接触java很容易产生你这样的想法
等你Java了解多了,就会感觉到Java不像VB,Delphi只是一个语言,而是一个平台。
jar是最常用的部署单元,做成exe没什么意思。


Jove edited on 2004-06-08 12:05


话题树型展开
人气 标题 作者 字数 发贴时间
13030 [精华] 怎样将java写的程序变成exe文件!!!! cchuier 275 2004-06-03 16:53
15790 Re:怎样将java写的程序变成exe文件!!!! Jove 1170 2004-06-03 18:43
11548 谢谢jove cchuier 101 2004-06-03 20:08
11720 Re:怎样将java写的程序变成exe文件!!!! powerant 300 2004-06-08 10:48
11487 Re:怎样将java写的程序变成exe文件!!!! zgd 28 2004-06-08 12:39
11343 Re:怎样将java写的程序变成exe文件!!!! 编程浪子 22 2004-06-09 20:56
11217 Re:怎样将java写的程序变成exe文件!!!! york1978 31 2004-06-10 17:49
11158 Re:怎样将java写的程序变成exe文件!!!! cchuier 4 2004-06-19 20:16

flat modethreaded modego to previous topicgo to next topicgo to back
  已读帖子
  新的帖子
  被删除的帖子
Jump to the top of page

   Powered by Jute Powerful Forum® Version Jute 1.5.6 Ent
Copyright © 2002-2021 Cjsdn Team. All Righits Reserved. 闽ICP备05005120号-1
客服电话 18559299278    客服信箱 714923@qq.com    客服QQ 714923