java实现可安装的exe程序实例详解

通过编写java代码,实现可安装的exe文件的一般思路:

1、在eclipse中创建java项目,然后编写java代码,将编写好的java项目导出一个.jar格式的jar包;

2、通过安装exe4j软件,将导出的.jar格式的文件制作成.exe格式的可执行的文件,(注意:此时的.exe文件只是可以执行,还不能够安装);

3、通过安装inno setup软件,将可执行的.exe格式的文件、.jar格式的文件以及其它需要的文件制作成一个可安装的.exe格式的文件;

4、非常注意:在exe4j和inno setup软件中选择的路径都是相对路径,因此在导出的jar包、exe4j、inno setup等软件执行的过程中,强烈建议一直保持在一个文件夹内进行操作和输出文件;

通过java代码实现可安装的exe格式文件的一般步骤如下:

一、创建java项目,编写好java代码,导出jar包:

1、创建java项目,编写java代码就不用多说了;

2、导出jar包:

步骤一:

步骤二:

步骤三:

二、通过安装exe4j软件,将jar包制作成可执行的exe格式文件(注意:此时的exe格式文件只是可以执行,但是不可以安装):

1、下载exe4j软件,然后按照正常的进行安装即可:

2、步骤一:

3、步骤二:

4、步骤三:注意选择路径的时候一定要选择存放有jar包、jre等文件的文件夹所在的路径,这也是输出.exe格式文件的路径,强烈建议这样写;

5、步骤四:此位置填写的内容就是.exe格式文件输出的文件名;

6、步骤五:将项目导出的jar包添加进来,非常注意:此时的jar包路径一定要相对路径,因为上述选择输出.exe格式文件的路径就是jar包所在文件夹的路径,即exe4j软件工作空间就是jar包所在的路径,相对路径是相对于工作空间来说的,因为jar包就在工作空间的根目录下,因此只接写jar包的文件名+格式即可;

7、步骤六:选择执行项目时,首先执行的第一个java类,类似于在bs项目中,访问某个项目时设置访问首页一样;

8、步骤七:项目的jar包和项目访问的首类设置好后,直接next下一步即可;

9、步骤八:利用exe4j制作的.exe格式文件默认的是32位操作系统的文件,如果要制作64位操作系统的文件,可以按照下图进行选择设置;

10、步骤九:设置程序运行时jre的版本范围;

11、步骤十:因为创建的是java项目,项目最终是要在jvm上进行运行的,如果要用户自己安装jdk,配置环境变量非常的不方便,因此可以制作的过程中将jre封装进行,可以自己设定好运行环境jre的版本,让用户更加方便的使用程序,下图是为程序设定jre运行环境的步骤:非常注意:jre要放在和jar包同级目录下,这样就可以写相对目录了,否则容易出现文件;

12、步骤十一:以后直接默认next即可:

三、通过安装inno setup软件,将可执行的.exe文件、jar文件、jre文件封装到一个可以安装的.exe文件:

1、安装inno setup软件,并启动该软件:

2、默认next即可:

3、设置程序安装时默认创建的安装文件夹以及程序的版本号等信息:

4、默认next即可:

5、选择可执行的.exe格式文件的目录:

6、将可执行的.exe文件、jar包、jre文件所在的文件夹添加进来,并且将该文件夹内的所有文件均添加进来,这样可以设置成相对路径了就:

7、默认next即可:

8、在.exe文件、jar包、jre文件所在的文件夹内创建1.txt、2.txt、3.txt三个文本文件,并按照下图依次设置即可,我也不知具体原因,可能是要存储一些运行过程中的信息吧:

9、默认next即可:

10、设置输出可安装的.exe格式文件的位置以及输出的.exe格式的文件名称,非常注意:可安装的.exe格式文件输出位置一定也要是jar包、jre文件、可执行.exe文件所在的文件夹;

11、直接默认next,按照图片上步骤进行即可:

12、制作完毕,现在可以看一下可以安装的.exe格式文件了:

13、最终,将jar包、jre文件、可执行的.exe文件、可安装的.exe文件等所在的文件夹压缩成一个包,将包作发给用户即可。用户只需要解压文件,点击可安装的.exe文件,安装即可,安装完毕后即可将该解压文件删掉;

如有疑问请留言或者到本站社区交流讨论,感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!

原文链接:http://www.cnblogs.com/lsy-blogs/p/7668425.html

java写exe程序实例,java实现可安装的exe程序实例详解相关推荐

  1. java程序安装_java实现可安装的exe程序

    java实现可安装的exe程序 通过编写Java代码,实现可安装的exe文件的一般思路: 1.在eclipse中创建java项目,然后编写Java代码,将编写好的Java项目导出一个.jar格式的ja ...

  2. getconnection java_在MyEclipse用java写的一个GetConnection1.java,用于连接MySQL,却总是出错。(没有财富值了,见谅!)...

    在MyEclipse用java写的一个GetConnection1.java,用于连接MySQL,却总是出错.求救!!!packageJavaBean1;importjava.sql.*;import ...

  3. java调用webservice_笃学私教:Java开发网站架构演变过程-从单体应用到微服务架构详解...

    原标题:笃学私教:Java开发网站架构演变过程-从单体应用到微服务架构详解 Java开发网站架构演变过程,到目前为止,大致分为5个阶段,分别为单体架构.集群架构.分布式架构.SOA架构和微服务架构.下 ...

  4. java中北大学ppt总结+课后习题第四章(小宇特详解)

    java中北大学ppt总结+课后习题第四章(小宇特详解) 继承 子类与父类 继承是根据现有类创建新的类的机制,由继承而得到的新类称为子类(subclass)或派生类(derived class),被继 ...

  5. Java中常见RuntimeException与其他异常表及Exception逻辑关系详解

    Java中常见RuntimeException与其他异常表及Exception逻辑关系详解 前言 常见`RuntimeException` 其他错误类型 `Error`类 `Exception`类 E ...

  6. Java调用SMSLib用单口短信猫发送短信详解

    技术园地 当前位置:短信猫网站主页 > 技术园地 > [转载]Java调用SMSLib用单口短信猫发送短信详解 发布时间:2017/02/09 点击量:620 SMSLib是Apache的 ...

  7. Sonic 开源移动端云真机测试平台 - 设备中心接入安卓设备实例演示,Agent端服务部署过程详解

    Sonic 开源移动端云真机测试平台 - Agent端服务部署与安卓设备接入演示 一加8手机连接效果图展示 第一章:环境准备 ① agent-sources 资源包下载 ② Android SDK安装 ...

  8. 转:iOS应用程序生命周期(前后台切换,应用的各种状态)详解

    iOS应用程序生命周期(前后台切换,应用的各种状态)详解 分类: iOS开发进阶2012-10-08 15:35 42691人阅读 评论(30) 收藏 举报 iosapplication任务anima ...

  9. DSP28377S_程序从FLASH部分复制到RAM中运行详解

    程序从FLASH部分复制到RAM中运行详解 为什么要复制到RAM中运行 CMD文件中对存储空间的分配 CMD文件中对段的定义 CMD文件中FLASH部分复制到RAM中的定义 main中的操作 编译后如 ...

  10. 从头开始写STM32F103C8T6驱动库(四)——编写延时函数,详解Systick

    系列文章目录 Github开源地址 从头开始写STM32F103C8T6驱动库(一)--STM32CubeMX创建并调整工程结构 从头开始写STM32F103C8T6驱动库(二)--编写系统初始化程序 ...

最新文章

  1. 7-Python3从入门到实战—基础之数据类型(字典-Dictionary)
  2. 数据库对象 同义词 索引 序列 视图
  3. linux 源码安装详解
  4. 什么东西都要用一句话总结出来:这是最重要的
  5. 虚拟机使用ESXi主机物理硬盘的办法
  6. 消费者驱动的契约测试_告诉我们您想要什么,我们将做到:消费者驱动的合同测试消息传递...
  7. leetcode180. 连续出现的数字(SQL)
  8. 几个功能强大的系统源码(机票分销、机票预订、OA、手机充值、wifi营销、网络超市、体检平台)...
  9. 计数排序(count sort)
  10. 解决!Gallery中嵌套ListView,Gallery不能滑动的问题
  11. 如何处理苹果Mac冻结和无响应的应用程序?
  12. python中print说法正确的是_python中的print()输出
  13. 系统体系结构框架 DoDAF
  14. HZOI20190903模拟36 字符,蛋糕,游戏
  15. 致远OA任意文件上传
  16. CVPR21-无监督异常检测《CutPaste:Self-Supervised Learning for Anomaly Detection and Localization》
  17. python入门ppt下载_Python3入门ppt
  18. Java技术——Interface与abstract类的区别
  19. 基于MATLAB实现进制数转换
  20. antDesign 修改日历(Calendar) 的一二三四五六日为周一周X格式

热门文章

  1. java param request_SpringMvc之@RequestParam详解
  2. 基于C++的骨架提取的鼻祖算法
  3. Ubuntu 12.04 64bit上安装Apache Traffic Server 4.1.2
  4. Go 分布式学习利器(12)-- Go语言的扩展和复用
  5. 从零打造在线网盘系统之Hibernate框架起步
  6. c++重载(以运算符重载为主)
  7. 函数的四种调用模式.上下文调用.call.apply
  8. hihocoder 1152 Lucky Substrings
  9. IOS入门-TargetAction
  10. 猎豹MFC--列表控件ListControl