Jar 转 EXE 可以脱离 java 环境 jar to exe和Jsmooth 的使用

来源:互联网 发布:qq定时发送消息 编程 编辑:程序博客网 时间:2024/04/29 10:23

ar 转 EXE 可以脱离 java 环境 jar to exe和Jsmooth 的使用

 

 呵呵,把图全加上了

 

这篇文章是在Word中写的,本来每一步都有截图,不过在这插图太麻烦了,所以把Word放在附件中了,用到了两个软件也放在附件中了 

或者你可以到这看(有图):
 
http://student.csdn.net/space.php?uid=48560&do=blog&id=4173    


转帖请注明出处 
http://yisufuyou.javaeye.com/admin/blogs/403556  

http://student.csdn.net/space.php?uid=48560&do=blog&id=4173                  

 



     其实挺早之前就在想将Jar文件打包成EXE文件,不过一直没有实验,昨天上网查了一下,呵呵,其实也挺简单的。
如果只是想在本机上运行这个EXE那太简单不过了,只要Google一下“Jar exe”就可以搜到一大把的软件,比如JavaLaunch、Jar to exe(j2ewiz)等。我个人感觉后者比较简单。
       如果我们想生成的EXE文件可以在任何机器上运行,那就得另想它法。有一个开源软件可以达到我们的目的,就是Jsmooth。Jsmooth的原理很简单,既然是因为没有JRE而无法运行我们的程序,那我们就自己带一个JRE(Jar to exe好像也可以配置成自带JRE,不过我没试验)。不过JRE有近百兆,所以我找了一个精简的JRE,20MB,其实可以根据自己的程序需要精简JRE,不过这个问题比“Jar文件打包成EXE文件”更复杂,改天再说。




下面就详细讲一下J2ewiz 和jsmooth的用法:

一、j2ewiz使用方法:





操作步骤:
1、 双击j2ewiz.exe,出现软件注册窗口,点击下一步。


 
2、 选择待转换的Jar文件及最低Jvm版本。我选择了一个贪吃蛇小游戏的Jar文件,最低JRE为1.5。

 

3、 选择程序类型,我选择了Windows窗口程序。



4、 选择主启动类,我选择MySnakeFrame类。



5、 其他选项,我没选。



6、 选择其他依赖包,我没选。

7、 选择生成exe文件的文件名(路径)和图标。我放在桌面上的MySnake.exe,图标默认。

8、 生成完成,可以配置其他参数,我没配置,点完成。

9、 这就是我们的exe文件。
原来的jar文件为184 KB,
生成的EXE文件为 296 KB,还可以。

10、 看看能不能运行,哈哈,成功了!


11、 我们在没有Java环境的机器上试一试,我用的是虚拟机,没装java。结果可想而知,无法运行。



二、Jsmooth的使用方法:



操作步骤:
1、首先准备我们的资源,把要转换的Jar文件、精简过的JRE文件夹和想生成的EXE文件的图标(可以是png,jpg等格式,不想加图标可以不弄)放到同一个文件夹内。这一步一定要做,否则可以成功生成,但在没有java环境的机子上还是不能运行,因为他会找不到JRE文件夹的位置
2、双击jsmoothgen.exe,出现主界面。

3、点击骨架,我从骨架中选择Windows Wrapper(根据自己程序需要选择),即有图像界面的窗口程序,下面的消息为找不到JRE环境时显示的消息,URL为JRE的下载地址。

4、点击可执行文件,填写生成EXE文件的文件名(路径)和图标

5、点击应用程序,出现如下窗口:

可以选择“嵌入式Jar”,即将Jar文件嵌入到EXE文件里面,也可以在Classpath中加入Jar文件,不过这样生成的EXE文件里没有Jar文件,运行时需要从外部加载。
我们勾选“嵌入式Jar”,填写要转换的Jar文件路径。


然后点击“主类”后面的浏览按钮出现如下对话框:

从中选择主类,点Select按钮。
6、关键的一步:JVM选择.
点选捆绑在你应用中的JVM,点击浏览按钮,选择JRE目录


7、哈哈,现在可以点击工具栏上小齿轮编译了。
看看我们的EXE文件

8、这个程序在有java环境的机子上可以独立运行
在没有java环境的机子上只要该目录下有JRE文件夹(JRE环境)就可以运行。
9、我们测试一下,在没有java环境的虚拟机上可以成功运行。