zoukankan      html  css  js  c++  java
  • 把Jar文件转成exe安装文件

    1.你要清楚的目标文件是32位还是64位的,如果生成的是32位,你就要使用32位的jre,如果生成的是64位,就要使用64位的jre。

             

                                                            图 1

             在圆圈位置进行32bit或64bit的选择。因为我要创建的是32bit,所以就使用默认的。

             2.JRE的配置(没配置好的话报各种JAVA_HOME错误):

             我先创建一个文件夹叫“HJ小助手”,然后把我的可执行程序limitvic1.1.jar和jre文件夹放进去,以后生成的.exe文件也放在这个目录。

             

                                                                                   图2

            点击图一中的第六项JRE的search Sequence,会出现如图所示界面:

            

                                                                  图三

            把这三项都删掉,然后重新选择jre的目录,指定目录为“HJ小助手1.1”文件夹中的jre文件夹。如图:

            

            

                                                                     图四

            这样子导出来的.exe可执行文件就可以执行,不会报如下图所示的错误了,把"HJ小助手1.1"这个文件夹发给电脑没有安装jre 的小伙伴也可以使用。

             

            3.转化后的.exe文件无法显示图片资源。

            我的项目是Swing项目,其中需要用到一些图标。因为是.exe执行文件,所以读取图片资源的时候需要用到类加载器,而不能直接使用URL地址。

            

    ImageIcon icon = new ImageIcon(ImageIO.read(getClass().getClassLoader().
                        getResource("frame.png")));

             还有很重要的一点就是图片放置的文件夹必须是系统资源文件夹,不然图片获取不了,如图所示将文件夹设置为资源文件夹。

             

             4. 既然已经生成了可运行的.exe文件,但是给别人使用的时候就要把jre文件夹也一起放进去,这样子文件夹大小似乎达到了100多兆了,可你原本的文件其实很小,所以我用Inno Setup 打包工具,把文件夹打包成一安装文件,这样子占用容量就减小了很多。Inno Setup 工具的使用方法也是十分简单,而且网络上已经可以下载到汉化版本的。这里就提一下在打包过程中的一个该注意的问题:

              如图所示:添加文件夹的时候,要把jre文件夹的上一级目录添加进去,在本项目中是"HJ小助手1.1"这个文件夹,不然运行的时候找不到jre文件。

             

             根据脚本向导步骤很快就可以生产.exe的安装文件,大小为30多兆,比原来的文件夹小多了。

    转自:http://www.cnblogs.com/limingzhang/p/4547988.html

  • 相关阅读:
    CodeForces 97 E. Leaders(点双连通分量 + 倍增)
    51nod 1318 最大公约数与最小公倍数方程组(2-SAT)
    关于 atcoder 页面美化的 css
    凸优化小结
    LOJ #2802. 「CCC 2018」平衡树(整除分块 + dp)
    AGC 016 F
    BZOJ 3745: [Coci2015]Norma(分治)
    BZOJ 1124: [POI2008]枪战Maf(构造 + 贪心)
    Linux之Json20160705
    Linux之ioctl20160705
  • 原文地址:https://www.cnblogs.com/azhqiang/p/4550863.html
Copyright © 2011-2022 走看看