一、将IDEA中的java项目打包成jar包
①点击菜单栏中的文件→项目结构
![](https://img-blog.csdnimg.cn/img_convert/6b9671ade70592304b35fd107123d1e8.png)
②在项目结构窗口选择工件。点击添加,选择jar,选择来自有依赖项的模块
![](https://img-blog.csdnimg.cn/img_convert/0ca5d875e4037c855d7190f50580535b.png)
③在【从模块创建JAR】对话框中,选择主类,点击确定
![](https://img-blog.csdnimg.cn/img_convert/d3a1c0ea9fa31987e1ea52ffb9fff677.png)
④点击确定。
![](https://img-blog.csdnimg.cn/img_convert/a5a066b76bb69f96d18951195d3e4e16.png)
⑤点击菜单栏中的构建,选择构建项目
![](https://img-blog.csdnimg.cn/img_convert/f128e76c6cc003e814db24596d061f42.png)
⑥点击菜单栏中的构建,选择构建工件。接着在弹出的菜单中点击构建。
![](https://img-blog.csdnimg.cn/img_convert/05c84133e1a21f280afd354d4de28c6b.png)
![](https://img-blog.csdnimg.cn/img_convert/8ba0b54e7f9b4138d122c3c4f34e3e13.png)
⑦在当前项目的out文件夹下的jar文件夹下就生成了jar文件。
![](https://img-blog.csdnimg.cn/img_convert/2c63b6a2a1020613d60193c2524a9203.png)
⑧测试jar文件运行是否成功。找到jar文件所在的本地磁盘路径下,
![](https://img-blog.csdnimg.cn/img_convert/673a62dbdfaa86961322a90e97d33bb0.png)
![](https://img-blog.csdnimg.cn/img_convert/df3c1d55b5719baf09933a9968822127.png)
在jar文件的路径下,打开cmd,输入 java -jar MyFirstProject.jar,实现jar文件的运行。
![](https://img-blog.csdnimg.cn/img_convert/49fb2a3d8129843f6a974e628c2bcc9f.png)
二、将jar文件打包成exe可执行程序。
①下载exe4j,https://exe4j.apponic.com/download/ ,选择64位进行下载。安装完成,该版本支持JDK11。
②打开安装好的exe4j软件,在欢迎界面,直接点击next。
![](https://img-blog.csdnimg.cn/img_convert/65c4038088d9cf125e32b36ebbc0ff7d.png)
③点击next,选择,"JAR in EXE“ mode
![](https://img-blog.csdnimg.cn/img_convert/2e9eb3bfd420be373eaf6714477d8476.png)
④设置项目名称,以及导出路径, 最好自己在其他盘创建一个专门的文件夹。
![](https://img-blog.csdnimg.cn/img_convert/a83e1d499d1f1bdbad6f6bfadcae248b.png)
⑤在这步我们配置程序运行相关的参数。
首先,我们选择Console application这会让我们的程序运行时出现一个运行框。
然后,我们给exe程序取一个名字MyHellowWorld。
下面Icon File如果选中,可以在右侧配置一个ico图标文件的地址。配置ico图标让你的exe程序有一个好看的icon。这里我们没有设置icon。
下面最关键的是在ADVAnced Options下拉菜单里选择32-bit or 64-bit。在新界面里可以勾选64位来配置exe程序为64位可执行程序。最后点击Next按钮两下,进入Java invocation界面。
![](https://img-blog.csdnimg.cn/img_convert/69728b6a55f64da6d539c1e0b4d152f9.jpeg)
![](https://img-blog.csdnimg.cn/img_convert/2afd7df71bd0de5f269f0e805f5e8527.png)
⑥在java invocation界面我们可以导入我们的jar包。首先,点击中间右侧的绿色加号,在弹出的对话框中,点击中间右侧三个小点的按钮来找到我们存放在文件夹中的jar包。在弹出的对话框中选中jar文件,然后点击打开,再点击OK。(注意:如果你有多个jar包或是有外部jar包需要导入,则继续点击绿色加号来加入你的jar包。)【注意:最好把jar复制到刚刚创建的项目文件夹中。】
![](https://img-blog.csdnimg.cn/img_convert/24590c603d4c56e8525d232d7c6c4cd7.jpeg)
⑦在该界面下方Main Class form中选择主类。
![](https://img-blog.csdnimg.cn/img_convert/a6f506f2a48495378365fac3e15fcfc6.jpeg)
⑧配置java版本。我们打包生成的exe文件仍需要java环境的支持。在前两个框中输入支持你程序的java最低和最高版本,最低填1.7,最高可不填,
然后,勾选Allow JREs with a beta version number,这是允许你的程序运行在beta版本的java环境中。最后点击Advanced Options下拉菜单,选中Search sequence 来配置jre的地址。
![](https://img-blog.csdnimg.cn/img_convert/8990660b35e721a8c2fd22b8b247fc02.jpeg)
⑨配置jre地址。我们首先点击右侧的X按钮来删除默认的三个地址。这三个地址是让程序从主机系统中找到jre,但有发布运行的主机并没有安装java,所以我们的程序将自带jre文件夹,而不使用主机系统中的java环境。因此,我们将本机系统中的jre文件夹复制到我们输出exe文件的文件夹中。【注意这里要把jre复制到文件夹中。】
![](https://img-blog.csdnimg.cn/img_convert/fdb535fb16128bfdc08c7c6b3de4d1f6.png)
补充:若当前计算机安装的JDK11.0.8,可能安装路径下没有jre文件夹,我们可以打开jdk安装路径,清空路径后,输入cmd回车,进入命令行窗口,在窗口中输入bin\jlink.exe --module-path jmods --add-modules java.desktop --output jre ,将会在jdk路径下生成jre文件夹,将其复制到exe生成文件夹中。
![](https://img-blog.csdnimg.cn/img_convert/06a73c69d13474651201aec1c1380c2f.png)
![](https://img-blog.csdnimg.cn/img_convert/930882c7f119f7b430b3805dabf4df70.png)
![](https://img-blog.csdnimg.cn/img_convert/c1d9b24c5746fada60d264be2ea4e98a.png)
![](https://img-blog.csdnimg.cn/img_convert/dd2e69f21fe6d540fe4d7be107939eb7.png)
⑩我们点击绿色加号,选择directory,再选中文件夹中的jre文件夹。这样地址就能配置成相对地址,每次运行时exe程序会在本身文件夹里寻找jre文件夹,而不用依赖发布的运行主机系统。接着,一直点击next,直至finish。
![](https://img-blog.csdnimg.cn/img_convert/c9321dd21d511a4205dbab8c33bfb615.png)
文件夹下生成.exe程序,接下来,,先删除jar包,再双击运行exe程序即可。
![](https://img-blog.csdnimg.cn/img_convert/1aee762403e7f1352da00d53da1532ad.png)
![](https://img-blog.csdnimg.cn/img_convert/1dd0ac5f836b75dcb28fab3b615dfb9d.png)