把Jar文件转成exe安装文件的实现方法

所属分类: 软件编程 / java 阅读数: 57
收藏 0 赞 0 分享

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多兆,比原来的文件夹小多了。

以上就是小编为大家带来的把Jar文件转成exe安装文件的实现方法全部内容了,希望大家多多支持脚本之家~

更多精彩内容其他人还在看

Java基于反射机制实现全部注解获取的方法示例

这篇文章主要介绍了Java基于反射机制实现全部注解获取的方法,结合实例形式分析了java反射机制获取注解的具体实现方法与操作注意事项,需要的朋友可以参考下
收藏 0 赞 0 分享

Java 信号量Semaphore的实现

这篇文章主要介绍了Java 信号量Semaphore的实现,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
收藏 0 赞 0 分享

eclipse+maven+spring mvc项目基本搭建过程

这篇文章主要介绍了eclipse+maven+spring mvc项目基本搭建过程,本文图文并茂给大家介绍的非常详细,具有一定的参考借鉴价值,需要的朋友可以参考下
收藏 0 赞 0 分享

Spring boot集成swagger2生成接口文档的全过程

这篇文章主要给大家介绍了关于Spring boot集成swagger2生成接口文档的相关资料,文中通过示例代码介绍的非常详细,对大家学习或者使用Spring boot具有一定的参考学习价值,需要的朋友们下面来一起学习学习吧
收藏 0 赞 0 分享

Java冒泡排序法和选择排序法的实现

这篇文章主要介绍了Java冒泡排序法和选择排序法的实现,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
收藏 0 赞 0 分享

Spring Cloud Alibaba教程之Sentinel的使用

这篇文章主要介绍了Spring Cloud Alibaba教程之Sentinel的使用,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
收藏 0 赞 0 分享

Josephus环的四种解法(约瑟夫环)基于java详解

这篇文章主要介绍了Josephus环的四种解法(约瑟夫环)基于java详解,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
收藏 0 赞 0 分享

Java继承Thread类创建线程类示例

这篇文章主要介绍了Java继承Thread类创建线程类,结合实例形式分析了java线程操作相关使用技巧与注意事项,需要的朋友可以参考下
收藏 0 赞 0 分享

Java使用Callable和Future创建线程操作示例

这篇文章主要介绍了Java使用Callable和Future创建线程操作,结合实例形式分析了java使用Callable接口和Future类创建线程的相关操作技巧与注意事项,需要的朋友可以参考下
收藏 0 赞 0 分享

springBoot使用JdbcTemplate代码实例

这篇文章主要介绍了springBoot使用JdbcTemplate代码实例,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
收藏 0 赞 0 分享
查看更多