原理大概看了一下,基本上是将其做成一个自解压文件运行,一个770字节的HelloWorld程序打包完成会成为380多k的程序,如果特别在意程序大小我觉得这个不是个好办法,但是为了发布方便,通过双击运行程序可以解决很多普通用户对Java的反感,这还是不错的选择。
这个程序可以在下面的网址找到:
http://jsmooth.sourceforge.net/index.php
安装之后运行会在开始菜单找到快捷方式,运行JSmoothGen
启动之后,界面类似Nokia的开发环境,左边是竖着一溜内容,很直观的告诉我们要从上到下一个一个设置。
需要说明一点的是在转EXE之前,你成Java程序应该已经打包成了Jar,这用Eclipse导出即可完成(其中要生成manifest文件到目录中,除非你自己已经写了)。
逐个将左边的内容说一下
Skeleton是基本设置,需要选择是包装成包含窗体的还是控制台的程序
选择之后,后面有个属性窗口,里面包含三个内容
Message:没有安装JRE的时候弹出的提示内容
PressKey:是否需要按键结束
Debug traces:是否调试跟踪
Executable是设置生成的EXE文件的属性
Executable Binary是生成的Exe文件路径及文件名,如:C:\HelloWorld.exe
Executable Icon是生成Exe文件的图标,内容如:C:\Dev-Cpp\Icons\Communication.ico
这个选项选择完了之后会在下面出现一个预览,有的图标文件没有出现预览图象而是出现“(no image)”的话,最好换一个,否则转换不过去
Current Directory是当前目录,一般不改,如果不仔细看的话看不到那个表示当前目录的点,小心删除了之后转换不过去
Application是有关Java程序的设置
Main Class这里输入程序的入口类,这个类应该包含一个main函数。因为我们经常会用到域名建立我们的命名空间(忘了Java叫什么,.net里面这么称呼的),这个时候可以用到打包时候生成的那个manifest文件了,如果你在打包的时候设置了Main Class,现在就可以把文件中的内容直接复制出来了。格式如下:org.onlymap.rodger.HelloWorld
Appliaction Arguments是执行程序的参数,如果你的程序运行的时候需要有一些参数可以放进去,如果在执行程序的时候又给了新的参数,这里给的参数就没有作用了,比如程序没有带参数启动的时候需要显示帮助,加入-h的时候也是显示帮助,那么就不需要在代码中针对无参数和-h分别判断,而是在这里输入一个-h即可达到这种效果。
Embedded Jar是你已经打包好的Java 程序,输入全路径,或者单击后面按钮启动对话框进行选择。
Classpath就不用说了吧,就是相关的其他的Jar包
JVM Selection提供了对Java 虚拟机的相关限制,其中包括了最高版本和最低版本限制,允许绑定一个虚拟机还有搜索Java虚拟机的环境变量顺序,这个基本我都没有动,不详细说了
JVM Configration是对虚拟机的配置,包含Maximum Memory(最大内存)、Initial Memory Allocation(初始内存分配)和Java Properties(Java属性),也都很好理解。只是最后一个,这些信息除了查看属性的时候可能可以看到之外,是否在程序中也可以调用呢?
如果有错请大家指正。
(原文:http://www.3snews.net/html/95/895-6944.html)
No comments:
Post a Comment