记录我与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,那就比较麻烦了,笔者就遇到了这种问题,打开软件会弹出以下信息:

64位jdk错误提示信息

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

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


查看jdk路径

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

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 135,026评论 19 139
  • 1. Java基础部分 基础部分的顺序:基本语法,类相关的语法,内部类的语法,继承相关的语法,异常的语法,线程的语...
    子非鱼_t_阅读 31,785评论 18 399
  • 《Java从小白到大牛》纸质版已经上架了!!! 《论语•魏灵公》曰:“工欲善其事,必先利其器”,做好一件事,准备工...
    tony关东升阅读 1,249评论 0 4
  • 投射 今晚做个美梦,梦里有和谐的家庭,还有花儿和蓝天。 感赏 今天回家啦,一路顺畅,朋友把我送到机场大巴,检票顺利...
    妈妈随笔阅读 227评论 2 4
  • 今天学到一个新的概念,知识复利的概念,知识,利率,和财富的关系。钱,利率一定,时间越长,复利财富越大,知识也是如此...
    坏猴子72变阅读 133评论 0 0