我的漫漫程序之旅

专注于JavaWeb开发
随笔 - 39, 文章 - 310, 评论 - 411, 引用 - 0
数据加载中……

将java应用程序打包成独立运行的.exe方法

对于windows用户来说,将java应用程序打包成.exe最好不过了,现在我介绍两个方法。

1、用专业的应用程序打包工具InstallAnywhere,这个软件几乎能在所有平台上运行,当然你要下载到你需要的那个平台的啦!而且它也
能打包成各个平台的安装程序(当然不是免费的)。
我下载的是7.1 企业版
我只提供一些注册码,安装程序大家在网上找.
InstallAnywhere7.1注册码
使用方法参考:具体

2、用MINI的免费的工具javalunch,JavaLauncher的下载网址是:
http://www.rolemaker.dk/nonRoleMaker/javalauncher/marner_java_launcher.htm

现在下载下来只有一个安装程序,是用界面来操作的.
我这里附上一个带源码的程序.也是本文中用
到的.
javaLauncher

下载下来的文件是一个名JavaLauncher.zip的压缩包,解压后的目录结构:
source目录包含了JavaLauncher的源程序,是用C语言写的
changes.txt是新版的修改说明
launch.exe是主程序
launcher.cfg是配置文件
readme.txt是一些说明和示例

我们只需要launch.exe、launcher.cfg两个文件,将这两个文件复制到打包文件所在的目录。launcher.cfg是一个仅三行内容的文本文件,将它修改如下:
.
.\jre1.6\bin\javaw.exe 
-
jar main.jar

第一行设置指向JAR包main.jar的目录,由于launch.exe和main.jar同在一个目录,所以用"."即当前目录。
第二行设置指向jre1.6\bin\javaw.exe的路径。
配置好launcher.cfg后,双击launch.exe即可运行java应用程序。

如果仔佃研究eclipse的启动方式,发现eclipse和JavaLauncher的原理一样:eclipse.exe相当于launch.exe,startup.jar相当于myswt.jar。只不过eclipse.exe不象launch.exe要具有通用性,所以它没有*.cfg这样的配置文件,而是将启动信息固化在eclipse.exe中。
另:美化图标

launch.exe文件的图标太单调了,让我们给它换个好看点的。换程序的图标需要用到一个免费的软件:
Resource Hacker,它有中文版,下载网址是:
http://www.users.on.net/johnson/resourcehacker/

ResHack

本文中使用的精简版的JRE,整个程序打包(包括JRE)共8M多一点,测试通过.

附下载:

精简版JRE1.6

posted on 2009-02-06 11:26 々上善若水々 阅读(19801) 评论(5)  编辑  收藏

评论

# re: 将java应用程序打包成独立运行的.exe方法  回复  更多评论   

没意义,怎么弄都需要java环境。顶多,把jre一起打了
2009-02-06 16:52 | 徐尧

# re: 将java应用程序打包成独立运行的.exe方法  回复  更多评论   

@徐尧
是将jre一起打.不能说没意义吧,有需求就说明有用处.
我这次做的软件就是java做的,客户不可能自己装jre环境
2009-02-06 17:52 | 々上善若水々

# re: 将java应用程序打包成独立运行的.exe方法  回复  更多评论   

其实要将java程序变成exe不需要这么麻烦,只需要使用任何一种可以生成exe文件的语言,如C#、VB、delphi、C++,编写一个简单的没有form的exe程序。然后在程序中通过windows api函数调用javaw -jar my.jar(my.jar是一个java GUI程序)即可。在运行时只需要执行这个exe就可以了。看看我写的文章:

http://www.blogjava.net/nokiaguy/archive/2009/04/15/265742.html

弄成exe的好处是可以使java程序更符合windows用户的习惯。否则就得执行bat或cmd文件,或直接执行jar包。这对于windows用户来说比较别扭。象很多基于java的程序在发布到windows上时都是使用的exe,而不是jar。
2009-05-01 11:44 | 银河使者

# re: 将java应用程序打包成独立运行的.exe方法  回复  更多评论   

当然,如果发布到linux/unix,也可以采用类似的方法
2009-05-01 11:44 | 银河使者

# re: 将java应用程序打包成独立运行的.exe方法  回复  更多评论   

很好
2014-11-02 23:51 | 孜来毕

只有注册用户登录后才能发表评论。


网站导航: