前言:

我们都知道Java可以将二进制程序打包成可执行jar文件,双击这个jar和双击exe效果是一样一样的,但感觉还是不同。其实将java程序打包成exe也需要这个可执行jar文件。

准备:

eclipse、exe4j(网上有软件和帐号下载)

第一步,将java项目打包成可执行jar文件,首先看一下我的java project结构,Main.java是程序入口类,里面有main函数,config目录是些配置文件,lib是用到的第三方类库

开始打包,Simulate(Java项目)-鼠标右键-Export

弹出窗口,选择“JAR file”,点击“Next”

取消勾选“config”和“lib”目录,以及eclipse生成的项目配置文件“.classpath”和“.project”,点击“Next”

一切默认,点击“Next”

在弹出窗口中,选择我们自己创建的MANIFEST.MF文件,点击“Finish”

我的MANIFEST.MF文件内容为:

Manifest-Version: 1.0
Main-Class: bing.Main
Class-Path: . lib/ojdbc14.jar lib/poi-2.5.1.jar lib/jbcl.jar lib/JTattoo.jar lib/liquidlnf.jar
Created-By: IceWee

通过指定“Main-Class”来达到可执行jar文件的目的。其实我们最终是将项目打包成exe,Class-Path可以不指定,在打包exe的时候还要指定classpath的。

第二步,将项目打包成exe,这里要明确一点,并不是把所有的文件都打包成一个exe,资源文件是不能包进去的,往下看↓

首先,在任意目录创建一个文件夹,最好命名和项目名相同,我在F盘创建了一个“Simulate”文件夹,之后将所有的资源文件以及我们生成的可执行jar文件(我的Simulate.jar)都拷贝到这个文件夹里,config目录和lib目录,如果你怕执行该程序的机器上没安装jre,那么你需要将自己机器上的jre目录也拷贝进来,我安装的jre5,最后的目录结构:

打开exe4j,跳过欢迎,直接点击左侧导航的第二项,因为我们已经提前将java项目打包成可执行jar文件了

在弹出窗口,选择“JAR in EXE mode”,点击“Next”

在新窗口中,为我们的应用取个名称,之后选择exe生成目录(我的F:\Simulate),点击“Next”

为我们要生成的exe取名,如果想生成自定义图标,那么选择你的ico文件,如果你不想在一台电脑上运行多个你的程序,你可以勾选“Allow only a single...”

这里建议选择勾上Adanced Options 的,然后一路Next。

点击绿色“+”,设置程序运行的Class Path

先选择我们自己的可执行jar文件(我的Simulate.jar),点击OK

我们的Simulate.jar就加到Class Path下了

之后点击General中的Main Class选择按钮,在弹出窗口中,exe4j会自动搜索当前Class Path下的全部jar中包含main方法的类,并列出,因为当前我只选择了自己项目的jar,而我的项目中只有Main.jar包含了main方法,所以一目了然,直接选择它点击“OK”,程序入口类就设置完成了

Main Class设置完成后,依次将所有需要的第三方类库加到Class Path下,方法同添加“Simulate.jar”一样,点击“Next”

输入Java最小Jre版本号,即低于这个版本的Jre无法运行该程序,接着点击“Advanced Options”-“Search sequence”,设置一下我们的JRE,之前说过,如果客户机上没装Jre咋办?,没关系我们捆绑一个进去

点击绿色“+”来选择捆绑的JRE位置

在弹出对话框中选择“Directiony”,之后选择JRE的文件夹,注意:这个JRE目录是我们将本机的JRE目录拷贝到当前exe生成目录下的,我的目录是F:\Simulate\jre5,下图程序使用的是相对目录,点击OK,完成JRE的捆绑操作

JRE捆绑完毕,可以把Enviroment variable JAVA_HOME和Environment variable JDK_HOME给删除掉,点击“Next”

默认,点击“Next”

默认,点击“Next”

默认,点击“Next”

exe生成中

OK,完成,点击“Exit”即可

看看成果如何吧!

我们的可执行jar以及第三方jar总共还不到5M,可jre5目录就50多M,如果目标机器上有JRE环境就可以把它删掉了,lib目录是第三方jar文件,现已打包到exe中了,所以它也没有存在的理由了,那么最小配置就剩下了“Simulate.exe”和“config”目录了!

出现  "This executable was created with an evaluation version of exe4j"  异常信息:

在使用exe4j时,如果您的exe4j没有注册,在运行有exe4j转换的*.jar为*.exe的可执行文件是会提示:"this executable was created with an evaluation version exe4j"的对话框,如下:

解决此问题的办法就是注册exe4j软件,在welcome to exe4j的右下角有一个注册信息的按钮,点击注册按钮。

在下图框中用户名和公司可以随便填,License key中填写下面给出的注册码,点击ok就可以注册成功了,在用exe4j打包jar包为exe文件时,就不会出现那个弹出框了。


注册码如下:

A-XVK258563F-1p4lv7mg7sav

A-XVK209982F-1y0i3h4ywx2h1

A-XVK267351F-dpurrhnyarva

A-XVK204432F-1kkoilo1jy2h3r

A-XVK246130F-1l7msieqiwqnq

A-XVK249554F-pllh351kcke50

A-XVK238729F-25yn13iea25i

A-XVK222711F-134h5ta8yxbm0

A-XVK275016F-15wjjcbn4tpj

A-XVK275016F-15wjjcbn4tpj

原文链接:

Java桌面程序打包为exe

exe4j中"This executable was created with an evaluation version of exe4j"

转载于:https://www.cnblogs.com/HDK2016/p/7614553.html

【exe4j】如何利用exe4j把java桌面程序生成exe文件相关推荐

  1. java写exe程序实例_2012软考软件设计师辅导:利用JAVA执行本地EXE文件

    曾经为了这样一个需求找了很多资料,今天终于学习到了!如何利用java执行exe文件?使用java类Runtime,每个Java应用程序都有一个Runtime类实例,使应用程序能够与其运行的环境相连接. ...

  2. 将Java程序作成exe文件的几种方法【转载】

    看到网上有同志的介绍将Java程序作成exe文件的方法,写的不错,但是也许是这篇文章完成的时间比较早,许多内容已经不合适了.我在这里补充几条: 一.exe4j 说明:exe4j可以将Jar文件制作成e ...

  3. 将Java程序作成exe文件的几种方法

    看到网上有同志的介绍将Java程序作成exe文件的方法,写的不错,但是也许是这篇文章完成的时间比较早,许多内容已经不合适了.我在这里补充几条: 一.exe4j 说明:exe4j可以将Jar文件制作成e ...

  4. java中 exe是什么文件_从文件位置运行Java中的.exe文件

    从文件位置运行Java中的.exe文件 我必须从我的Java程序打开一个.exe文件. 所以我试着下面的代码第一. Process process = runtime.exec("c:\\p ...

  5. 如何讲页面打入jar包中_如何把我的Java程序变成exe文件?

    JAVA是一种"跨平台"的语言,拥有"一次编写,处处运行"的特点,让它成为当今IT行业,必不可少的一门编程语言. 每一个软件开发完成之后,应该大家都需要打包程序 ...

  6. 如何把我的Java程序变成exe文件?

    JAVA是一种"跨平台"的语言,拥有"一次编写,处处运行"的特点,让它成为当今IT行业,必不可少的一门编程语言.每一个软件开发完成之后,应该大家都需要打包程序并 ...

  7. 如何将一个java程序变成exe_如何将一个java程序转换为.exe文件?

    小编典典 Java Packager工具可编译,打包并准备Java和JavaFX应用程序以进行分发.javapackager命令是命令行版本. 该javapackager实用程序随JDK一起提供.它可 ...

  8. java web调用exe文件_从网页WEB上调用本地应用程序(java)

    自己写了个java的桌面程序,想通过web页面调用直接打开登录页面,传账号和密码两个参数. 在网上看了很多资料,大多处理方法是自定义个协议然后通过协议来打开本地exe文件,但是这样传的参数怎么解析? ...

  9. Python实现整蛊恶搞程序生成exe文件小弹窗祝福发给好兄弟好闺蜜好室友

    节假日不给好兄弟好闺蜜好室友来点意外都感觉少了点乐趣. 目录 1.可以先运行看一下效果 2.先写好代码 3.安装pyinstaller 2.使用pyinstaller 打包程序 2.1 进入文件路径 ...

最新文章

  1. 中国北斗全球系统核心星座将于2019年年底部署完成
  2. 模拟video播放器
  3. 八十五、Python | Leetcode数据结构之图和动态规划算法系列
  4. Plain text, flat file, 及flat-file database 如何翻译
  5. webpack打包问题
  6. 安装win10的笔记本有10个地方需要微调
  7. oracle .net 中文,asp.net查出 oracle数据库中的中文乱码问题
  8. 数据采集无线网服务器软件,WIFI智能数据盒
  9. 关于QSS 看这一篇就够了!
  10. 税收学考试可以带计算机吗,注册税务师考试题型是不是都是选择题?能不能带计算器?...
  11. MINGW里面没有mingw32 make.exe
  12. 2021-7-20 Cityscape 数据集从19分类到4分类BiSeNetv1-v2训练验证和测试一条龙
  13. 腾讯低代码平台定价策略公开了
  14. 随风轻逝--感悟2005
  15. 韩非子《五蠹》全文及译文
  16. 组合数学的一些常见公式
  17. python矩阵和向量乘积_矩阵与向量的乘积
  18. svn: E155017: 工作副本的参考文件损坏【解决方案】
  19. K8S configmap挂载文件
  20. location.hash 原生js页面跳转/路由

热门文章

  1. SAP资产折旧-工作量法业务实践和实操
  2. 3Dmax+Substance Painter(SP)+.glb+threejs 次时代效果
  3. 群晖 NAS DS218j的优秀与缺憾
  4. GOM登录器配置免费版生成图文教程
  5. 狂神SpringMvc笔记
  6. Swift CoreAnimation ---- CALayer的呈现层和模型层
  7. 28 Apr 10:25:21.537 # HandleServiceCommands: system error caught. error code=1072, message = Create
  8. Beetl2.7.13 中文文档
  9. NestJS 7.x 折腾记: (4) Swagger接入及相关用法
  10. “该设备正在使用中。请关闭可能使用该设备的所有程序或窗口 然后重试” 解决步骤