将Java程序打包为为.exe文件

将Java程序打包为为.exe文件

将Java程序打包为为.exe文件分为俩个步骤:

1、将Java程序打包成Jar包(此时就可复制桌面便于使用)

2、打包为.exe文件(需要借助工具)

一、打包为.exe文件

1. file -> Project Structure 或者直接使用全局快捷键(Ctrl + Alt + Shift + S)

2. 新建JAR 并且选择有依赖关系的模块

3. 选择要打包的项目,选择要执行的 main 函数和jar包路径

3.1 选择启动的主函数

  1. 成功界面

4.1 你已经在这个路径下已经建过一个module了的话再次新建module就会报这个错,只要删除对应的文件夹即可

  1. 点击上方栏的Build生成Build Artifacts

6. 选择点击build就会在前面设置的路径下生成我们的jar包,其实这个jar包就已经可以运行了,继续看下去我们把它变成exe可执行文件。

去指定的目录下可以看到我们的Jar包已经生成了

二、打包为.exe文件

1. 先去官网下载 exe4j程序

2. Welcome to exe4j(想解决激活码问题的友友--点击→激活码

3. Project type

4. Application info

5. Executable inf

6.Java invocation

8. 第七步:Splash screen

直接点 next

9. Messages

直接点 next

10. Compile executable

直接点 next

加载完成则大功告成!!!

生成的.exe文件

文件在第一次打开的时候会进行检索磁盘 此时可能会较卡 等待一分钟左右就会扫描完啦 下次打开就会变的很快


操作过程中可能出现的问题

1、出现 NO JVM could be found on your system异常

解决方法

①.确保电脑装有java运行环境(jre);

②.确保jre的版本与使用exe4j生成exe时设置的版本一致,保证jre的版本在Minumum与Maximum之间

③.确保用于生成exe的exe4j与jre的位数一致:如果exe4j是32位的,那么jre也应当是32位的;如果exe4j是64位的,那么jre也应当是64位的。

2、exe4j打不开

解决方法

不能放在中文文件夹下,非版本问题

3、Compile error

解决方法

导致该问题的原因是该文件已经生成过并且处于运作中,找到原来生成.exe文件并且删掉,再重新生成.exe文件即可。

但是在删除过程中也可能删不掉,建议采用粉碎工具粉碎

在使用exe4j将Java应用程序打包成exe文件后,用户可能会遇到无法删除生成的exe文件的问题。这种情况通常与**exe4j的工作方式以及Windows操作系统的文件管理机制**有关。以下是对这一问题的详细分析及建议:

  1. **exe4j的工作原理**
  • **临时文件生成**:exe4j在运行Java应用程序时,会在临时目录下生成一些必要的文件,这些文件可能包括JRE(Java运行时环境)和其他运行程序所需的资源。

  • **文件锁定**:如果exe文件正在运行或被系统进程占用,Windows可能不允许删除这些文件,因为它们被视为正在使用中。

  • **权限问题**:在某些情况下,用户可能没有足够的权限来删除exe文件或相关临时文件,尤其是在那些对文件系统访问控制较为严格的Windows系统中。

  1. **Windows操作系统的特性**
  • **文件系统缓存**:Windows可能会将正在使用的文件保留在缓存中,即使应用程序已经关闭,这些文件也可能暂时无法删除。

  • **病毒检查软件**:某些病毒检查软件可能会锁定或扫描新创建的exe文件,这可能导致删除操作失败。

  • **系统还原点**:Windows的系统还原功能有时会保护系统文件和注册表设置,这可能会影响到exe文件的删除。

  1. **用户操作的影响**
  • **不当关闭应用程序**:如果应用程序没有通过正常的关闭流程结束,可能会导致临时文件未能正确清除。

  • **多个实例运行**:如果exe文件被启动了多次,可能会有多个实例在运行,这需要确保所有实例都已经完全关闭才能删除exe文件。

  • **手动干预**:用户试图在应用程序运行时删除exe文件,这通常会导致删除失败,因为系统会认为文件正在使用中。

  1. **编程实践的影响**
  • **程序代码问题**:如果Java应用程序本身存在内存泄漏或其他资源管理问题,可能会导致相关文件被不当持有,从而无法删除。

  • **exe4j配置错误**:使用exe4j进行打包时,如果配置不当,可能会导致生成的exe文件在运行时产生额外的锁定文件。

  • **依赖库管理**:Java应用程序所依赖的库文件如果没有被正确处理,也可能导致删除失败。

  1. **操作系统的其他因素**
  • **系统更新**:在进行系统更新时,Windows可能会加强对于系统文件的保护,这可能会影响到exe文件的删除。

  • **磁盘错误**:磁盘上的错误或坏道可能会导致文件无法正常删除。

  • **事件调度器任务**:如果操作系统中的事件调度器设置了与exe文件相关的任务,可能会导致文件在特定条件下被锁定。

等等原因。


声明:文章在转载的基础上加以改善,初衷是便于自己翻阅,发布是为了供大家参考学习

但是还请各位友友尊重原创

原文:http://t.csdnimg.cn/VPXiE

相关推荐
XiaoLeisj2 小时前
【JavaEE初阶 — 多线程】单例模式 & 指令重排序问题
java·开发语言·java-ee
paopaokaka_luck2 小时前
【360】基于springboot的志愿服务管理系统
java·spring boot·后端·spring·毕业设计
dayouziei2 小时前
java的类加载机制的学习
java·学习
励志成为嵌入式工程师3 小时前
c语言简单编程练习9
c语言·开发语言·算法·vim
捕鲸叉3 小时前
创建线程时传递参数给线程
开发语言·c++·算法
A charmer3 小时前
【C++】vector 类深度解析:探索动态数组的奥秘
开发语言·c++·算法
Peter_chq3 小时前
【操作系统】基于环形队列的生产消费模型
linux·c语言·开发语言·c++·后端
Yaml44 小时前
Spring Boot 与 Vue 共筑二手书籍交易卓越平台
java·spring boot·后端·mysql·spring·vue·二手书籍
小小小妮子~4 小时前
Spring Boot详解:从入门到精通
java·spring boot·后端
hong1616884 小时前
Spring Boot中实现多数据源连接和切换的方案
java·spring boot·后端