本文重点介绍如何将我们写的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. 第二章: Java总结

    第二章笔记 什么是变量:变量代表一块内存区域,变量类型不一样,这一块内存的大小也不一样.#在编程语言里面,你可以通过定义变量,向内存里添加数据或者修改内存已有的数据.说白了,变量就是代表程序运行时存放 ...

  2. js实现3D切换效果

    今天分享一个3d翻转动画效果,js+css3+h5实现,没有框架. 先看下html部分: <div class="box"> <ul> <li> ...

  3. OOM和JVM配置优化

    OOM这个缩写就是Java程序开发过程中让人最头痛的问题:Out of Memory.在很多开发人员的开发过程中,或多或少的都会遇到这类问题,这类问题定位比较困难,往往需要根据经验来判断可能出现问题的 ...

  4. sql server 2008 外键的级联操作

    问题提出:现在我有三张表,学生Student,课程Course,成绩SC 1.  学生表Student,主键是学号Sno 2.  课程Course,主码是课程号Cno 3.  成绩SC,主码是Sno和 ...

  5. 夯实Java基础(八)——代码块

    在Java中代码块指的是使用”{}”括起来的代码称为代码块.代码块一共分为4种:局部代码块,静态代码块,同步代码块,构造代码块. 1.局部代码块 局部代码块就是定义在方法体内部的代码块. public ...

  6. npm包开发与发布

    把通用的功能开发成npm包,便用使用和维护,更重要的是可以分享给广大的开发者,是不是很激动人心! 那么,步骤如下: 1.创建项目 创建项目目录,npm init ,根据需要输入配置信息(建完后也可以在 ...

  7. 数据结构之最小堆的实现C++版

    完全二叉树之所以用数组的方式存在,在于他的一个特性 若子节点为i,则父节点为(i-1)/2,注意c++特性,该结果肯定是个整数. 若父节点为j,则子节点必为2*j+1;则在数组里面可以非常方便的通过下 ...

  8. ibatis 核心原理解析

    最近查找一个生产问题的原因,需要深入研究 ibatis 框架的源码.虽然最后证明问题的原因与 ibatis 无关,但是这个过程加深了对 ibatis 框架原理的理解. 这篇文章主要就来讲讲 ibati ...

  9. 2019牛客多校训练第四场K.number(思维)

    题目传送门 题意: 输入一个只包含数字的字符串,求出是300的倍数的子串的个数(不同位置的0.00.000等都算,并考虑前导零的情况). sample input: 600 1230003210132 ...

  10. 如何成为PHP程序员?

    当今,互联网的蓬勃发展,移动互联网的火热,以及国家提出的“互联网+”.这些趋势可以让我们明显的感觉到互联网的重要,不可替代.网站也是大家最早接触,最早认识的一种新事物.谈到网站,无非最长脸的莫过于PH ...