前言:

我们都知道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.0Main-Class: bing.MainClass-Path: . lib/ojdbc14.jar lib/poi-2.5.1.jar lib/jbcl.jar lib/JTattoo.jar lib/liquidlnf.jarCreated-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...”,点击“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捆绑完毕,点击“Next”

默认,点击“Next”

默认,点击“Next”

默认,点击“Next”

exe生成中

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

看看成果如何吧!

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

转载于:https://www.cnblogs.com/haore147/p/3662504.html

java桌面项目打包_by icewee_写得太棒了,直接转载了相关推荐

  1. Java Maven项目打包成可执行jar文件

    在pom文件中添加一下内容 <build><plugins><plugin><!-- Build an executable JAR --><gr ...

  2. (javascript)vue项目打包后,写的覆盖element的样式无效了。这是什么原因?

    问题: (javascript)vue项目打包后,写的覆盖element的样式无效了.这是什么原因?描述: 在开发模式模式下,写的覆盖样式都有效,打包后就无效,请问下是什么原因? main.js里的c ...

  3. 用exe4j和inno setup将JAVA的项目打包为跨平台安装包

    用exe4j和inno setup将JAVA的项目打包为跨平台安装包 1.将eclipse中的相关文件导出为jar文件 2.将jar文件和jre文件用exe4j打包为可执行exe文件 3.将exe文件 ...

  4. 关于如何将java桌面程序打包成exe可执行文件

    一.先把java文件打包成jar 在Eclipse中在你要打包的项目上右击(如图我想打包一个叫graphicproject的项目) 出来一个快捷菜单,点Export,然后Next,出现如下界面注意把红 ...

  5. java桌面程序打包教程

    首先打包成j可执行的jar文件. . 接下来找到自己生成jar文件的路径就可以看到jar文件了,我的是在桌面: 在桌面新建一个文件夹(名字随便取,一般去项目名字) 上面是我取的文件夹名字,然后把资料文 ...

  6. java普通项目打包成exe可执行文件

    · 提示,无论打包成jar还是exe程序,运行都需要JDK,需要给没有安装JDK的电脑安装: · maven项目有自己的打jar包方式,我们普通的java项目,可以安照步骤一打包成jar: 步骤一.先 ...

  7. Java桌面程序打包成exe可执行文件

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

  8. java restful项目打包_66-JT项目04(项目打包发布/JSON/项目业务)

    关于项目打包/发布问题说明 利用maven工具项目打包 说明: 父级JT 其中包含了2个子级项目 jt-manager 依赖于jt-common.所以项目打包是有顺序的.要先打包被依赖的项目 或者直接 ...

  9. Java桌面程序打包全过程

    最近需要用Java写一个桌面的程序,考虑到环境要一起打包,参照别人和自己的操作过程写一个文,主要是为记录. 本文主要将以下两个博客内容放在一起,相对全面,在此谢谢两位 https://www.cnbl ...

  10. java restful项目打包_听说你在接私活? 一个助你效率翻倍的项目工具!!

    最近,个人也接了点不足挂齿的小小私活.为了快速开发,开箱即用,每个项目不需要重新搭建.提升效率,就写了基本的项目架子,然后根据已建好的数据库,生成对应的增删改查的接口.生成即可使用. 一.生成的项目结 ...

最新文章

  1. zabbix监控nginx,PHP-FPM,ELK报警
  2. lightoj-1028 Trailing Zeroes (I)
  3. Linux 调优方案, 修改最大连接数(ulimit命令)
  4. PHP中的call_user_func_array
  5. mac golang grpc proto pb文件生成go文件.md
  6. 最具体的历史centos下一个 postfix + extmail + dovecot + maildrop 安装注意事项2014更新...
  7. 开发SQLite数据库常用的管理工具
  8. inception V4 与resnet
  9. sigaction介绍
  10. linux docker 分配资源,Docker 容器资源限制
  11. 的watch什么时候触发_Vue中computedamp;methodamp;watch的区别
  12. 关于find指令的一点使用小心得 II
  13. 【Python】Python解释器
  14. 安装Seay代码审计工具
  15. 2020最新版本js车牌号检验规则
  16. 学习笔记1——制作数据集
  17. 用计算机求和公式,全国计算机一级等考excel之sum求和函数
  18. 吴伯凡-认知方法论-效率高并不一定是好事
  19. 论文导读 | 社交网络上的信息传播预测
  20. 微信小程序----App生命周期

热门文章

  1. Mysql-slowlog
  2. ERROR 1010 (HY000): Error dropping database (can't rmdir './bolgdb/', errno: 17)
  3. android TextView屏蔽复制粘贴文本选择菜单
  4. Luogu2619[国家集训队2] Tree I
  5. LOJ2360「NOIP2016」换教室
  6. [2018.09.12 T1] 下落的圆盘
  7. http抓包实践--(七)-fiddler弱网环境
  8. 、nohup 不中断后台执行
  9. window下环境变量立即生效
  10. rust里面的柴油桶有什么用_用了橡木桶的红酒就一定好吗?什么样的酒才适合橡木桶?...