JarRun: 将Jar打包成EXE发布到没有装Java的电脑上运行,一步搞定!

时间:2022-07-18 09:40:12

  用一个 HelloWorld 来说明,编写HelloWorld和打包成Jar的部分就不说了,随便哪个IDE都会提供一个菜单项让你生成Jar 文件的吧。去掉JDK的的路径信息,只要你的JAR能在标准的SUN JRE里运行,那么就可以打包成EXE发布,不会产生兼容性问题。

看看打包以后的样子,JarRun: 将Jar打包成EXE发布到没有装Java的电脑上运行,一步搞定!

Hello World文件描述,注意,这个程序是单一EXE文件,运行时本身也不产生临时文件(即没有解压什么的)JarRun: 将Jar打包成EXE发布到没有装Java的电脑上运行,一步搞定!JarRun: 将Jar打包成EXE发布到没有装Java的电脑上运行,一步搞定!JarRun的描述。

因为这个程序是在网吧完成的和演示的,显示扩展名的选项被屏蔽了,懒得弄,不过确实是EXE文件,后面我会提供下载的网址。

现在,在一台没有装Java的电脑上双击。
---这么小的体积,还是Java程序,当然不是内置JRE,什么也不会发生吧。如果。。万一。。那么内置的是什么呢? 继续看...

JarRun: 将Jar打包成EXE发布到没有装Java的电脑上运行,一步搞定!


你猜到了吗?没错!内置的是一个下载安装器。JarRun打包的EXE,在检测到没有安装JRE或者JRE的版本小于你需要的版本时(因为没有设置文件,所以这个Helloworld使用默认的1.6.0),就会弹出这样一个对话框,而不是象别的JAR -> EXE那样什么也不做或者需要你把JAR和JRE一起打包给用户。自动安装是默认勾选的,所以这里直接点确定,精彩的后面还有。。

JarRun: 将Jar打包成EXE发布到没有装Java的电脑上运行,一步搞定!

开始下载。。下载结束以后是全自动安装,因为前面已经选了自动安装,所有后面的就不需要用户动手了。他只需要等几分钟下载完然后自动安装完成就可以出现下面的画面。。

JarRun: 将Jar打包成EXE发布到没有装Java的电脑上运行,一步搞定!

对了,那个网址是JarRun之前的名字,现在的网址是: http://code.google.com/p/wordforce/wiki/JarRun,不过还是空白的。

JarRun打包出来的EXE完全支持命令行参数,也可以在和EXE同名的ini或者cfg文件读取更多的配置。JarRun.exe目前的体积是289KB,打包以后的体积=JarRun.exe的体积+你的Jar文件的体积。

JarRun可以做到发布以后一键下载安装,运行时自动搜索%Java_home%,%Path%,配置文件设定的Java.exe/javaw.exe路径。是从Sun的服务器上下载JRE,可以保证来源稳定和版本最新。

那么,另一个问题,用JarRun打包Jar文件麻烦吧?打包过程是这样的...把Jar文件拉到JarRun.exe上,

JarRun: 将Jar打包成EXE发布到没有装Java的电脑上运行,一步搞定!

然后在当前文件夹找你的helloworld.exe 吧,已经完成了。命令行也是可以支持的。要求只有一个,JarRun.exe不要改成别的名字,JarRun是根据自己的名字来判断是完成打包还是传递命令行参数来执行你的Jar 的。

顺便提一下,JarRun只管运行,用WinRAR右键点击文件名打开还是可以看见Jar里面的Class文件,不过那关系很大吗?毕竟你要保护代码的话可以自己用专业工具来做混淆。

JarRun也许还是不够完善,连配置文件的说明现在都还没有。这个程序写起来并不难,关键是提供一种思路,在捆绑JRE和只发布JAR文件之间提供另外一种选择。而且,我自己也不清楚这样做的意义有多大,之所以发布出来就是为了大家能给个意见,到底有没有价值这么做,有价值的话又要怎样来完善它。

JarRun 和相关文件都可以在这里下载:  http://code.google.com/p/wordforce/downloads/list