java桌面程序从打包到安装的全过程

1、整个项目可以跑动,能够在自己电脑上运行,在这里我将关于浏览器解决activityX插件的问题进行综合阐述

背景:由于html5的出现,导致谷歌浏览器不再支持activityX这个插件,从而来支持h5的功能,来适应手机,手机上不可能安装插件,为了解决打印机和读取电子秤的重量读数问题,在公司老板的指导下,完成这个小应用,并且需要做到能安装到电脑上,并能指定打印机进行打印,同时读取串口数据,打印的功能主要是有pdfbox做的,整个服务是由netty做的,至于为什么用netty,在下不得而知,只知道他是高性能的服务器和客户端。

功能:能够连接到浏览器上进行打印机的设置和读取串口数据,同时开机启动,并且开机隐藏最小化,任务托盘,所有的都是由java开发,托盘使用swt进行开发

2、开发整个应用,并打包,这里主要讲如何进行打包,并成功安装在一台没有任何配置的电脑中

3、

首先我们分析一下项目结构,win32com.dll文件是一个关于读取串口数据的dll文件,如果没有这个文件,安装到别人电脑上是不会有任何串口读出来的,具体可以看http://blog.csdn.net/zhutulang/article/details/6876676 如何实现的


在这里我将这个文件直接拷贝到项目里面去了(采用前面提到的另一种方式后问题就会显得很麻烦),在上面的层级结构中出现,如果没有拷贝那么做出来的软件将不能运用到任何电脑上,至于其他两个文件自己电脑开发需要进行配置,另外MANIFST.MF 文件是关于项目中所使用第三方jar包的路径,


在写路径的时候前面必须打空格,换行的时候也必须打空格,两个包之间也是由空格隔开,如果项目中没有写这个文件(自己要手动加上去否则),自己电脑上运行可以,但是别人电脑上不行,Main-Class中写关于main方法的类,其他的.bat文件是关于window批处理文件,用来往注册表中进行写开机启动项的。

4,开始进行导出 ,项目右键后有关于export,点击进入



在这里有必要解释一下,JAR file和Runable JAR file的区别,前者是关于不可执行的jar包,后者是可以直接用java进行执行的jar包,导出这样的jar包之后,我们可以利用cmd命令进行输出执行过程,看到执行过程中的错误显示,可以根据错误提示进行修改 点击next


在launch configuration中选择启动的文件类,在下面选择输出文件位置,点击完成生成,可能会遇到错误,直接OK,生成了一个IOClient.jar的文件在桌面上


至此导出部分完成


导出完成后需要把jar包进行打包做成可安装的程序,这里使用的软件是exe4j这个软件,首先这个软件需要注册,如果不注册打包后的安装程序可能会提示出现未注册的情况,至于怎么注册,直接百度注册信息,找一个序列号就好了


1、打开后界面如图所示(强烈建议将所需要的文件放到一个文件夹中,这样不会有错误出现,如下图






其中open 和Reopen 是如果你以前曾经打包过这个安装包那么直接打开就行了,如果没有就一步一步的next往下


这有解释一下这两种方式的不同之处,第一种方式是传统的模式,我们可以直接更换jar就可以直接更换掉整个软件,但是不够安全,第二种模式相对安全,这里我们采用第一种方式点击next



其中一个是应用的名字,另外一个是输出的路径 next




next


将自己在前面导出的jar包添加进来--OK

在Man class 中,将jar包中的入口类添加进去 next


添加所需jre的最小版本和最大版本

点击下拉里面的search sequence

将这三个移除,添加自己所需的jre版本 


next

next



完成后可点击测试是否成功

至此生成可执行的exe文件结束



接下来是将生成的exe文件和jre打包为一个文件进行安装到客户端(使用软件Inono setup compiler)

(将所有的文件放到一个文件夹中,这样安装后的文件层级结构很明显)






一直next,知道如下输出文件路径


在输出路径下面有一个关于桌面图标的,直接选择图标就可以改变安装程序的图标

然后编译,至于包不保存就看你了,至此所有完成



  • 2
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值