java成打包成exe-在任意windows上运行
2012-04-25 08:00
281 查看
一直都有一个困扰,就是自己写的java程序只能在有JRE的环境下才能运行,这个问题对于程序的发布是致命的,好在今天,这个问题终于解决啦,方法来自一篇上好的Blog,索性转一下:
--------------------------------------------------------------------------------------
转自:http://apps.hi.baidu.com/share/detail/6346080
--------------------------------------------------------------------------------------
打包工具exej4的使用方法(含一起打包JRE):
exe4j.exe下载地址: http://download.ej-technologies.com/exe4j/exe4j_windows_4_0_1.exe
第一次安装时会出现下面的对话框:
它要求系统有1.5版本以上的JDK,点Download在线下载,如果你的机器上有JDK,点Locate找到你机器上已安装的JDK目录下/bin/java.exe就可以进行安装了。
下面就安装过程详细说明一下:
第1步,默认即可。
第2步,如果已经有制作好的jar文件,则下面一个"JAR in EXE"。
对于打包jar文件,在eclipse中右击项目选导出即可,不会制作jar文件可以给我留言
第3步,上面是项目名称,可随便填写,下面一个写出你想要将打包后的exe文件输出的目录:
第4步,由于我的演示程序是图形的,所以选第一个,如果你的程序是控制台的,则选择第二个,Executable name写你将要生成的exe文件的名字,Icon File可以选择生成文件的图标
第5步,首先,单击绿色的"+"号,在弹出的窗口中点Archive,然后找到起初已经做好的jar文件,"OK"后返回,在下面的Class Path里就出现jar文件路径后,再在上面Main Class栏内点击找到main所在的类,这一步即算完成:
第6步,你系统的JRE版本,上面填个1.3,下面填1.6:
当然,这样配置的程序只能在安装有JRE的机器上执行,发布时总要考虑的问题就是用户是否有能力在自己机器上安装JRE,总不能发布一个程序还要用户自己安装个JRE吧,下面我就介绍如何将JDK环境变量动态打包到exe中,在这里单击advanced options,选择search sequence。如图:
首先把JRE复制到exe文件输出的目录里,我用的是c:\xaocker\,在弹出的窗口中,删除列表中所有项,然后单击绿+,选择directory并选择JRE的根目录(注意是拷贝后的目录)即可,如图:
单击ok后,再从图中单击advanced options,并选择preferred VM,在弹出的窗口中选择client hostspot VM,单击next按钮继续:
第7、8步是一些基本配置,默认即可,第9步编译,第10步你就可以点这个看到效果了:
exe4j未注册的版本会出现下面的对话框:
点击确定之后就可以看到你程序的运行结果了!
java.exe依照一套逻辑来寻找可以用的JRE,首先查找自己所在的目录下有没有JRE,其次查找自己的父目录下有没有JRE;最后才是查询Windows的注册表。
现在我们的程序可以在任意的计算机上执行了,可是缺点是致命的,比方说我的程序才160K,可是不论走到哪里都要背着70多M的JRE,未免有点小题大做吧,其实作为我们的私有的JRE,好多内容都是可以抛弃的。Jre目录下的license都可以不要,bin下的执行文件只需要保留java.exe或者javaw.exe,lib下只要保留rt,jsse,jce,charsets几个库就可以了。除了i386和zi两个子目录外,其余的子目录都可以不要。Zi下只需要保留自己地区的子目录和其下的一些文件就可以。Lib下除了库之外的属性文件等等都要保留。这样清理一番,JRE仍然有接近50MB。还可以继续清理几个库文件里面不需要的内容,这需要仔细的整理,会很费功夫。最好能写出一个自动工具帮助我们整理它们。从Sun公司上下到的JMF里面附带的用Java写的媒体播放器就自带了JRE,只有几个MB。
清理过后需要运行几遍我们的应用程序,以确保我们的JRE不缺少东西。
OK,仔细清理之后,文件变小了不少,可以发布了……
-------------------------------------------------------------------------------------------------
下面简单说一下,Eclipse打包jar的方法:
各种编程工具都可以做JAR包,我用的是Eclipse,非常容易:
--------------------------------------------------------------------------------------
转自:http://apps.hi.baidu.com/share/detail/6346080
--------------------------------------------------------------------------------------
打包工具exej4的使用方法(含一起打包JRE):
exe4j.exe下载地址: http://download.ej-technologies.com/exe4j/exe4j_windows_4_0_1.exe
第一次安装时会出现下面的对话框:
它要求系统有1.5版本以上的JDK,点Download在线下载,如果你的机器上有JDK,点Locate找到你机器上已安装的JDK目录下/bin/java.exe就可以进行安装了。
下面就安装过程详细说明一下:
第1步,默认即可。
第2步,如果已经有制作好的jar文件,则下面一个"JAR in EXE"。
对于打包jar文件,在eclipse中右击项目选导出即可,不会制作jar文件可以给我留言
第3步,上面是项目名称,可随便填写,下面一个写出你想要将打包后的exe文件输出的目录:
第4步,由于我的演示程序是图形的,所以选第一个,如果你的程序是控制台的,则选择第二个,Executable name写你将要生成的exe文件的名字,Icon File可以选择生成文件的图标
第5步,首先,单击绿色的"+"号,在弹出的窗口中点Archive,然后找到起初已经做好的jar文件,"OK"后返回,在下面的Class Path里就出现jar文件路径后,再在上面Main Class栏内点击找到main所在的类,这一步即算完成:
第6步,你系统的JRE版本,上面填个1.3,下面填1.6:
当然,这样配置的程序只能在安装有JRE的机器上执行,发布时总要考虑的问题就是用户是否有能力在自己机器上安装JRE,总不能发布一个程序还要用户自己安装个JRE吧,下面我就介绍如何将JDK环境变量动态打包到exe中,在这里单击advanced options,选择search sequence。如图:
首先把JRE复制到exe文件输出的目录里,我用的是c:\xaocker\,在弹出的窗口中,删除列表中所有项,然后单击绿+,选择directory并选择JRE的根目录(注意是拷贝后的目录)即可,如图:
单击ok后,再从图中单击advanced options,并选择preferred VM,在弹出的窗口中选择client hostspot VM,单击next按钮继续:
第7、8步是一些基本配置,默认即可,第9步编译,第10步你就可以点这个看到效果了:
exe4j未注册的版本会出现下面的对话框:
点击确定之后就可以看到你程序的运行结果了!
java.exe依照一套逻辑来寻找可以用的JRE,首先查找自己所在的目录下有没有JRE,其次查找自己的父目录下有没有JRE;最后才是查询Windows的注册表。
现在我们的程序可以在任意的计算机上执行了,可是缺点是致命的,比方说我的程序才160K,可是不论走到哪里都要背着70多M的JRE,未免有点小题大做吧,其实作为我们的私有的JRE,好多内容都是可以抛弃的。Jre目录下的license都可以不要,bin下的执行文件只需要保留java.exe或者javaw.exe,lib下只要保留rt,jsse,jce,charsets几个库就可以了。除了i386和zi两个子目录外,其余的子目录都可以不要。Zi下只需要保留自己地区的子目录和其下的一些文件就可以。Lib下除了库之外的属性文件等等都要保留。这样清理一番,JRE仍然有接近50MB。还可以继续清理几个库文件里面不需要的内容,这需要仔细的整理,会很费功夫。最好能写出一个自动工具帮助我们整理它们。从Sun公司上下到的JMF里面附带的用Java写的媒体播放器就自带了JRE,只有几个MB。
清理过后需要运行几遍我们的应用程序,以确保我们的JRE不缺少东西。
OK,仔细清理之后,文件变小了不少,可以发布了……
-------------------------------------------------------------------------------------------------
下面简单说一下,Eclipse打包jar的方法:
各种编程工具都可以做JAR包,我用的是Eclipse,非常容易:
相关文章推荐
- 如何将java程序包打包成.exe文件,在没有安装jre的windows上运行
- Jsmooth Java文件打包成exe文件(可以在没安装JDK的环境下运行)
- 关于Java的socket服务端项目如何打包成exe文件运行在服务器上。
- 一个简单java小程序打包成EXE运行文件
- 史上最详细版!java文件打包成exe,在未配置安装JDK和未配置的电脑上运行
- java 语言运行exe或者直接打开文件(Windows下)
- Atitit.Java exe bat 作为windows系统服务程序运行
- Jar 打包 EXE文件,可以脱离java环境运行 Jsmooth的使用
- 把java编的程序包装成其他机器windows下可运行的exe
- Java打包成jar文件,以及jar文件的运行+将jar文件导出为exe文件(看图说)
- 使用installanywhere打包java文件生成任何平台都可以运行的程序(如.exe)(关闭360!)
- 史上最详细版!java文件打包成exe,在未配置安装JDK和未配置的电脑上运行
- Jsmooth Java文件打包成exe文件(可以在没安装JDK的环境下运行)
- Java GUI项目读取Jar内部外部文件 打包EXE 在没有java环境的电脑上可运行
- Windows——Ant+Launch4j+Inno setup将Java项目打包为可安装exe
- windows下双击可运行的Java软件打包方案
- Java程序导出成.jar文件、生成.exe可执行文件及打包成可执行安装程序(可在无Java环境的计算机上运行)--以个人所得税计算器为例
- Pyinstaller 打包python 到exe 在windows下免python环境运行python
- Java文件打包成exe,在未配置安装JDK和未配置的电脑上运行
- java 程序用exe4j 打包成exe,怎样在没有jdk环境电脑上运行