记录我与java客户端程序的初次接触

最近在做的项目需要调用第三方API,考虑到对java熟悉一些,就用了java语言进行开发,结果两天前老板让给程序写一个客户端界面,我一想,简单啊,Swing和AWT一起上,布局排版折腾了一天,终于写好了,运行程序,完美无瑕!

(PS:为什么用了java开发客户端?众所周知,java不适合写客户端程序!!!java的优势是企业开发、web这块,的确在界面开发上不是强项,不过这次的客户端程序对界面并没有太多效果的要求,界面效率也不是瓶颈,相比于其他GUI工具,本人对Java更为熟悉,所以此次暂时采用java)

好,下一步,开始导出,拿到jar文件后,我才意识到关键两个问题:
  1.运行java桌面程序,必然要安装java虚拟机,这对于普通客户来说,是很难接受的,那我们有没有别的办法,不让用户安装JDK就可以运行java程序;
  2.jar文件对于客户来有些太陌生,能不能转成成exe文件,让用户一眼看出这是一个可执行文件;

带着这两个问题,我开始查资料,对于上述问题,也找到了解决办法,现对操作过程进行记录:
  Java程序打包成exe可执行文件,分为三大步骤:
  第一步:将Java程序通过Eclipse或者Myeclipse导成Jar包
  第二步:新建一个文件夹,将jar包以及32位jre(注意:一定要是32位!!!)放入该文件夹下,然后通过Jsmooth或者exe4j将Jar包生成exe可执行文件
  第三步:根据自己的程序,对JRE进行瘦身后与exe文件一起打包交付给客户

重点在于第二部分,对于Jsmooth和exe4j这两个软件,我都进行了尝试,exe4j是不是免费的,如果不进行注册,生成后的可执行文件在打开时会先弹出提示框,意思是你这个exe文件是用exe4j转的,虽然说尊重版权吧,但是作为强迫症晚癌还是不能忍。于是转而尝试Jsmooth,这个软件简介明了,又是免费的,操作方法综合参考1和参考2.

在第二步中,要格外注意的一点是,Jsmooth和exe4j都只能对32位的jdk进行捆绑,通过cmd -version查看,如果自己的电脑上装的是64位的jdk,那就比较麻烦了,笔者就遇到了这种问题,打开软件会弹出以下信息:

记录我与java客户端程序的初次接触_第1张图片
64位jdk错误提示信息

  我们也知道,eclipse和jdk的位数必须一样,不然eclipse无法打开,打开会弹出一个类似文件夹的信息!所以若我们再装一个32位jdk后,极易产生混乱,导致eclipse打不开,所以保险起见,还是找一台安装有32位jdk的电脑进行第二步操作吧。

通过java -verbose查看jdk安装路径:


记录我与java客户端程序的初次接触_第2张图片
查看jdk路径

  Jsmooth完成后,会在第二步建立的文件夹中生成一个exe程序,此时可以删除jar文件,只保留exe和jre一起打包给客户,就可以让这个磨人的java小妖精在不装jdk的电脑上运行了!!!

你可能感兴趣的:(记录我与java客户端程序的初次接触)