Import the Java program into an exe in Idea and run it on a machine without a JVM

wyplj_sir 2022-08-15 17:29:08 阅读数:590

importjavaprogramexeidea

一、将Javaprogram intojar包

  1. 点击File—>Project Structure,点击Artifacts,Add一个JAR
    在这里插入图片描述

  2. 进入下图页面后,选择程序的Main Class
    在这里插入图片描述
    在这里插入图片描述

  3. 为了要Put the program on which it dependsjarThe package is all included,选择“copy to the output……”,Note the selection belowMANIFEST文件的存储位置,To create a new folder,我直接在src下面新建了一个resource文件夹,点击OK
    在这里插入图片描述

  4. 对“output root”点击右键,Select Create Directory
    在这里插入图片描述

  5. 我创建了一个名为“libs”的目录,will be program dependentlib全部移到libs文件夹中
    在这里插入图片描述

  6. 点击创建的jar,下面会出现Class Path的配置页面,点击编辑按钮,在依赖的jarConfigure the folder name in front of the package(在指定的jar文件之前增加“libs/”即刚才存放第三方Jar文件的新建目录的名称),之后点击OK、Apply
    在这里插入图片描述

  7. 回到Idea主页面,点击上面工具栏的“Build”,选择Build Artifacts,之后点击Build
    在这里插入图片描述
    在这里插入图片描述

  8. 等待片刻,jar包就build好了,可以看到out目录下build成功的jar包
    在这里插入图片描述

二、将jar包转为exe文件

  1. 首先需要exe4J软件

链接:https://pan.baidu.com/s/1kRu9Gst7wcLPYtQ4Jy0YwQ
提取码:r1ai
自行下载,安装过程省略,一直下一步就行

  1. 打开exe4j软件,点击next,选择“JAR in EXE”mode,点击next
    在这里插入图片描述
    在这里插入图片描述
  2. Fill in the program name and exe文件的存放位置
    在这里插入图片描述
  3. 填写生成的exe文件的名称,注意不要直接next,Click the digit selection on the left toolbar
    在这里插入图片描述
  4. 如果系统是32位的,可以跳过这一步,如果是64位,勾选上这个选项,然后一直next
    在这里插入图片描述
  5. 直到Configure Java invocation这一步,点击右边的加号
    在这里插入图片描述
  6. 然后Put the program on which it dependsjar包和程序jarAll packages are added
    在这里插入图片描述
  7. Select the entry for the programMain class,结果如下,点击next
    在这里插入图片描述
  8. 进入Configure JRE,设置一下JRE版本,点击左边的Search sequence
    在这里插入图片描述
  9. 首先把默认的JREAll three configurations are deleted(Because we're going to run on noJVM的环境中,So whether it is based on the registry to find or based onJAVA_HOME来找,都找不到)
    在这里插入图片描述
  10. 将jreCopy the folder to our project directory,配置jre的相对路径,点击OK,next
    在这里插入图片描述
  11. 一直默认next就好
    在这里插入图片描述
  12. 之后exe就生成成功,结构如下,点击Ole.exe即可运行
    在这里插入图片描述
  13. Be careful to copy the entire project to other machines,包括jre文件夹

注意:

1. exe4jis not possiblejre直接打包进exe中去的.但exe4jA search is providedjre路径,This path can be a system environment variable,It can also be a registry,It can also be a specific path.
As to be realized now there is nojvm的电脑上运行,Searching for environment variables and the registry is naturally useless,So only a certain path can be searched.把jre的路径,加进去,就行了.但要注意一点:Otherwise, use an absolute path.I used absolute paths before,result in invalid,And took a detour.比如可以用:./jre
2. When making the installation package,要将生成的exe文件与jre一起打包.In order to confirm the package is completed,可以用,Before packing,点该exe文件,To make sure it works,Otherwise, packing will be in vain.

参考链接:关于将javaprogram into.exe
参考链接:idea打包java程序(Contains all dependenciesjar包)
参考链接:JavaFx项目打包成exe,并集成Jre

copyright:author[wyplj_sir],Please bring the original link to reprint, thank you. https://en.javamana.com/2022/227/202208151724194453.html