本文重点介绍如何将我们写的java代码打包成在电脑上可以运行的exe文件

本文重点介绍如何将我们写的java代码打包成在电脑上可以运行的exe文件。这里只介绍直接打包成exe的方法,至于打包成exe安装包下节介绍

test

软件准备

exe4j集合包下载地址(下节内容也在这里)

  • 今天我们下载好上面的内容之后只需要用到其中的一个软件,对,就是里面的exe4.exe文件

  • 然后就是安装这个软件,软件都是傻瓜式安装。不多说!安装后首页显示,激活码去网上搜索!

jar包准备

  • 在打包之前我们当然得先准备jar包啦。选择项目右击-->Export-->Runnable JAR file

  • 点击下一步 别忘记选择主入口,这些在之前的文章都已经说过了。

打包开始

  • 在打包开始我们得想之前我用jsmooth打包exe文件一样,需要准备jre文件,我这里就用了jdk文件,jre好像不行

  • 下面就开始打包的真正的开始了,首先我们打开之前安装好的exe4j这个软件。直接点击第二步:peoject type 选择 JAR in EXE mode

  • 点击next我们会看到需要我们填写工程的简名和程序的输出地址,工程简名可以随便填写,输出地址 就是你想把你的exe文件最后输出在哪里,建议放在你好找的地方,毕竟以后你只用点击exe就能运行了。

  • 然是继续点击next,下一个界面我们遇到选择模式的Executable type,这里就取决与我们java的代码了,如果你开发的是黑窗体程序就选择console application; 如果开发的是java swing 程序那就选择默认的GUI application ,第三个选项我也不知道是java 什么程序。读者可以自己研究。我这里就选择默认的GUI程序了。
  • 第二个选项是Executable name 顾名思义就是你程序的名字,你可以起一个响亮的名字,这里支持中文名字的。
  • 第三个选项是Icon File 这就是我们exe层序的图标,就像QQ软件那个企鹅一样,建议可以设置成自己的个性照片,但是这个只能用ico格式的图片。当然也可以不选择,就用系统默认的图标

  • 这里设置好之后我们点击界面的左侧菜单Executable info 下面的Advanced options,因为这里我们需要设置一些详细信息,这里不点很难成功的打包的。

  • Redirection参数

  • service options

这里的参数我们自己看看懂了,大家可以设置也可以不设置。

  • version info 这里也不重要,看看我的参考吧

  • 32 -bit or 64 - bit
    这个就是取决于你的i项目在那里运行了,如果你想让他在64系统下能
    运行你就选择Generate 64-bit executable 打上√,否则不勾。

  • Mainfest options 这里不选择,让他默认就行了

  • 然后就是添加jar包了。(java invocaton)

  • 在class path中点击加号选择我们之前打好的jar包

  • 选择好 jar包我们就选择下面的Main classs中选择我们需要程序运行的主入口,这个对于开发来说应该都懂得。

  • jre部分设置好最低最高版本之后点击Advanced Options-->Search sequence ,默认是会选择我们电脑上系统环境中的jdk,但是我们系统环境的jdk不能被别人用到所以我们这里把默认的三个全部散掉,然后添加我们事先准备好的jdk

  • next之后出现Preferred VM 中选择Client hostpost VM

  • next之后,我们到了Splash screen,就是你的程序启动界面,如果你想做的酷炫点就可以选择一下,这里图片没有限制应该,我选的就是普通的图片,你也可以试试GIF 动态图。

  • 到这里你就可以一直下一步。一直到下面这个界面你就可以选择Finishing 或者启动程序了。

效果图

  • 启动图

  • 运行后界面
  • 图标变了

  • 其他你可以右键这个exe看看属性就是我们上面设置的一些可有可无的东西楽。

加入战队

# 加入战队

微信公众号

别说你不会开发exe程序,拿走不谢。的更多相关文章

  1. 使用node-webkit开发exe窗口程序

    首发:个人博客,更新&纠错&回复 ====关于原生程序与壳中程序的议论begin==== 在所有用户windows机器上都能直接跑的程序,如果不采用微软系的语言,如VB,C++,C#等 ...

  2. Autocad中使用命令来调用python对Autocad二次开发打包后的exe程序

    在Autocad中直接调用Python二次开发程序是有必要的,下面介绍一种方法来实现这个功能: 其基本思路是:先将二次开发的程序打包为可执行程序exe,然后编写lsp文件,该文件写入调用exe程序的语 ...

  3. aardio + .NET 快速开发独立 EXE 程序,可防 ILSpy 反编译

    简介 aardio 可以非常方便地调用 .NET( 不需要任何复杂的步骤 ). .NET 在 aardio 中很好用,系统自带 .NET 组件以及各种开源 .NET 组件在 aardio 用户中也很受 ...

  4. 放弃 Electron,拥抱 WebView2!JavaScript 快速开发独立 EXE 程序

    Electron 不错,但也不是完美的. Electron 带来了很多优秀的桌面软件,但并不一定总是适合我们的需求. 多个选择总是好事! 我使用 Electron 遇到的一些麻烦 1.Electron ...

  5. 本地json文件的编辑器,node-webkit开发的exe程序

    首发:个人博客,更新&纠错&回复 在昨天的dota契合度计算器中,用到了dota英雄数据和dota玩家数据这两个数据库,为了便于网页应用使用,这两个数据库的存储格式是json,即her ...

  6. 如何制作exe程序可执行文件

    很多软件的运行都需要搭建环境,只有exe文件可以在不安装软件和数据库的环境下运行,那么怎么制作exe程序可执行文件呢,下面天使教你如何制作.   工具/原料   Microsoft Visual St ...

  7. 使用cx_Freeze 将python3代码打包成.exe程序

    在这里分享一下如何在py3下使用cx_Freeze打包pyqt5的程序 首先吐槽下,深深鄙视一下百度,各种百度各种没有,之前我在py2.7下使用pyqt4开发过一个小软件,用的是py2exe进行打包的 ...

  8. 部署vc2008开发的程序(三种办法,但是我觉得这种办法最不好)

    如果你编译了一个VC2008的默认的CRT/MFC的应用程序,如果目标部署电脑上没有安装相应的VC2008的动态库,当运行你的程序的时 个,会出现如下错误信息.   这是因为程序使用了基于VC2008 ...

  9. 部署vc2008开发的程序(vcredist_x86是其中一个办法)

    如果你编译了一个VC2008的默认的CRT/MFC的应用程序,如果目标部署电脑上没有安装相应的VC2008的动态库,当运行你的程序的时 个,会出现如下错误信息.   这是因为程序使用了基于VC2008 ...

随机推荐

  1. windows上使用pip下载东西时报编码错误问题解决方法

    原因是pip安装python包会加载我的用户目录,我的用户目录恰好是中文的,ascii不能编码.解决办法是: python目录 Python27\Lib\site-packages 建一个文件site ...

  2. 【iOS】图片缩放动画

    iOS 开发中,可用 UIView 的下述方法实现图片的缩放动画效果: + transitionWithView:duration:options:animations:completion: 示例代 ...

  3. QScintilla下载与编译

    你好,我是大贺! Pou光明  大家好,我又回来了~~ 之前和大家分享的是在c/c++中通过python c api嵌入python解释器,主体都是和python相关的.其实最终要和大家分享的是如何做 ...

  4. 分布式ID系列之为什么需要分布式ID以及生成分布式ID的业务需求

    为什么需要分布式id生成系统 在复杂分布式系统中,往往需要对大量的数据和消息进行唯一标识.如在美团点评的金融.支付.餐饮.酒店.猫眼电影等产品的系统中,数据日渐增长,对数据分库分表后需要有一个唯一ID ...

  5. JDK1.8源码分析01之学习建议(可以延伸其他源码学习)

    序言:目前有个计划就是准备看一下源码,来提升自己的技术实力.同时现在好多面试官都喜欢问源码,问你是否读过JDK源码等等? 针对如何阅读源码,也请教了我的老师.下面就先来看看老师的回答,也许会有帮助呢. ...

  6. java课堂 动手动脑3

    (1) 该函数没有赋初值再就是如果类提供一个自定义的构造方法,将导致系统不在提供默认的构造方法. (2) public class test { public static void main(Str ...

  7. Docker 架构原理及简单使用

    提示:文中有些内容为大神的博客内容,就不统一标注那里引用,只是再最下面标注参考连接谢谢 一.简介 1.了解docker的前生LXC LXC为Linux Container的简写.可以提供轻量级的虚拟化 ...

  8. codeforces679A_Bear and Prime 100 交互题

    传送门 第一道交互题 题意: 电脑事先想好了一个数[,] 你会每次问电脑一个数是否是它想的那个数的因数 电脑会告诉你yes或no 至多询问20次 最后要输出它想的数是质数还是合数 思路: 枚举< ...

  9. Python中input()的使用方法

    input()以字符串的方式获取用户输入: >>> x = input() 4.5 >>> type(x) <class 'str'> >> ...

  10. 消息中间件-activemq实战之整合Spring(四)

    前面的理论准备已经很充分,这一节我们来实战:将activemq整合到Spring框架才行中,因为Spring已经集成了JMS,这也为我们配置activermq带来了方便. 1. Spring对jms的 ...