将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 选择启动的主函数

4. 成功界面

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

5. 点击上方栏的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系统中。

2. **Windows操作系统的特性**
   - **文件系统缓存**:Windows可能会将正在使用的文件保留在缓存中,即使应用程序已经关闭,这些文件也可能暂时无法删除。
   - **病毒检查软件**:某些病毒检查软件可能会锁定或扫描新创建的exe文件,这可能导致删除操作失败。
   - **系统还原点**:Windows的系统还原功能有时会保护系统文件和注册表设置,这可能会影响到exe文件的删除。

3. **用户操作的影响**
   - **不当关闭应用程序**:如果应用程序没有通过正常的关闭流程结束,可能会导致临时文件未能正确清除。
   - **多个实例运行**:如果exe文件被启动了多次,可能会有多个实例在运行,这需要确保所有实例都已经完全关闭才能删除exe文件。
   - **手动干预**:用户试图在应用程序运行时删除exe文件,这通常会导致删除失败,因为系统会认为文件正在使用中。

4. **编程实践的影响**
   - **程序代码问题**:如果Java应用程序本身存在内存泄漏或其他资源管理问题,可能会导致相关文件被不当持有,从而无法删除。
   - **exe4j配置错误**:使用exe4j进行打包时,如果配置不当,可能会导致生成的exe文件在运行时产生额外的锁定文件。
   - **依赖库管理**:Java应用程序所依赖的库文件如果没有被正确处理,也可能导致删除失败。

5. **操作系统的其他因素**
   - **系统更新**:在进行系统更新时,Windows可能会加强对于系统文件的保护,这可能会影响到exe文件的删除。
   - **磁盘错误**:磁盘上的错误或坏道可能会导致文件无法正常删除。
   - **事件调度器任务**:如果操作系统中的事件调度器设置了与exe文件相关的任务,可能会导致文件在特定条件下被锁定。

等等原因。


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

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

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

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/diannao/22606.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

leetcode 215 数组中的第K个最大元素

题目 给定整数数组 nums 和整数 k,请返回数组中第 k 个最大的元素。 请注意,你需要找的是数组排序后的第 k 个最大的元素,而不是第 k 个不同的元素。 你必须设计并实现时间复杂度为 O(n) 的算法解决此问题。 示例 输入: [3,2,1,5,6,4], …

【前端基础】CSS介绍|CSS选择器|常用CSS

目录 一、CSS介绍 1.1 什么是CSS 1.2 基本语法规范 1.3 引⼊⽅式 1.4 规范 💡二、CSS选择器 1. 标签选择器 2. class选择器 3. id选择器 4. 复合选择器 5. 通配符选择器 三、常用CSS 3.1 color 3.2 font-size 3.3 border 3.4 width/height 3.5 padd…

【QEMU中文手册】2.2 调用方式(持续更新中)

本文由 AI 翻译(ChatGPT-4)完成,并由作者进行人工校对。如有任何问题或建议,欢迎联系我。联系方式:jelin-shoutlook.com。 原文:Invocation — QEMU documentation qemu-system-x86_64 [选项] [磁盘镜像]磁…

关于gitee上传成功没有绿点

今天上传完代码以后,打开gitee看了一下,但是看到昨天和今天都没有小绿点,仔细思考了一番,是仓库满了?不对啊,如果满了的话,上传就会失败啊,那这是什么问题呢? 原来是因为…

安全漏洞扫描工具

常用的安全漏洞扫描工具涵盖了网络扫描、Web应用扫描、系统漏洞检测等多个方面,以下是一些业界广泛认可和常用的工具: Nmap - 网络映射和安全审计工具,用于发现网络上的主机和服务,识别操作系统,枚举开放端口&#xff…

CSS常用形状

文章目录 一、对话框二、无限符号三、放大镜四、月牙五、加号六、叉号七、标签八、圆角三角形九、普通三角形十、五角星&#x1f1e8;&#x1f1f3;十一、平行四边形十二、六边形十三、钻石十四、长方形折角效果 一、对话框 <div class"talk-bubble"></div&…

【Python】 Python多线程管理:如何优雅地结束一个线程

基本原理 在Python中&#xff0c;线程是程序执行的并行方式之一。然而&#xff0c;管理线程&#xff0c;特别是如何结束一个线程&#xff0c;对于初学者来说可能是一个挑战。Python标准库中的threading模块提供了创建和管理线程的基本工具&#xff0c;但是并没有提供一个直接的…

【优选算法】优先级队列 {经验总结:优先级队列解决TopK问题,利用大小堆维护数据流中的中位数;相关编程题解析}

一、经验总结 优先级队列&#xff08;堆&#xff09;&#xff0c;常用于在集合中筛选最值或解决TopK问题。 提示&#xff1a;对于固定序列的TopK问题&#xff0c;最优解决方案是快速选择算法&#xff0c;时间复杂度为O(N)比堆算法O(NlogK)更优&#xff1b;而对于动态维护数据流…

创建百科词条时必须注意的四点

百度百科是企业或个人开展国内宣传的第一步&#xff0c;它就像一个网络名片&#xff0c;对外公开都可查阅&#xff0c;信息准确、可靠&#xff0c;特别有利于提升网络可信度。但是不是随便一个人就可以建立百度百科&#xff0c;百度百科有严谨的规则&#xff0c;小马识途营销顾…

Linux——PXE_FTP_EL8

PXE Kickstart &#xff08; el8 &#xff09; 使用两个网口一个用net接口用于下载服务和软件包&#xff0c;另一个为仅主机用于与其他的空主机相连 PXE(preboot execute environment) 预启动执行环境。支持工作站通过网络从远端服务器下载映像&#xff0c;并由此支持通过网络启…

有没有统信UOS虚拟机镜像,方便中国人下载开箱即用?

统信桌面操作系统&#xff08;UOS&#xff09;基于Linux5.3内核打造 最好是做几个版本&#xff0c;比如HYPER-V专用的虚拟机镜像.vhdx,win10系统自带的虚拟机 VMWARE的虚拟机镜像&#xff0c;Virtualbox虚拟机统信UOS镜像 有了虚拟机镜像&#xff0c;再加一些脚本配置&#x…

运动算法工程师笔试题

运动算法工程师的笔试题通常会涵盖多个方面&#xff0c;包括算法设计、编程能力、数学基础以及运动控制理论等。 算法设计与分析&#xff1a; 设计一个算法来解决特定的运动控制问题&#xff0c;例如路径规划、轨迹跟踪或运动优化。分析给定算法的时间复杂度和空间复杂度。 编…

git常用功能使用介绍

文章目录 GIT特殊功能使用介绍1. git log 相关1.1 查看一个文件的修改历史记录&#xff1a;git log -p filename1.1.1 查看一个文件的所有改动历史记录&#xff1a;git log --prettyoneline 文件名1.1.2 查看这个文件的某次提交的改动记录(git show 提交的hash值 文件名) 1.2 查…

Diffusers代码学习-LoRA训练

LoRA&#xff08;Low-Rank Adaptation of Large Language Models&#xff09;是一种流行的轻量级训练技术&#xff0c;它显著减少了可训练参数的数量。它的工作原理是在模型中插入少量的新权重&#xff0c;并且只训练这些权重。这使得使用LoRA进行训练的速度更快、内存高效&…

1790java网络学习平台Myeclipse开发mysql数据库web结构java编程计算机网页项目

一、源码特点 java网络学习平台系统 是一套完善的web设计系统&#xff0c;对理解JSP java编程开发语言有帮助采用了java设计&#xff0c;系统具有完整的源代码和数据库&#xff0c;系统采用web模式&#xff0c;系统主要采用B/S模式开发。开发环境为TOMCAT7.0,Myeclipse8.5开发&…

HTML静态网页成品作业(HTML+CSS)——VIVO介绍网页(1个页面)

&#x1f389;不定期分享源码&#xff0c;关注不丢失哦 文章目录 一、作品介绍二、作品演示三、代码目录四、网站代码HTML部分代码 五、源码获取 一、作品介绍 &#x1f3f7;️本套采用HTMLCSS&#xff0c;未使用Javacsript代码&#xff0c;共有1个页面。 二、作品演示 三、代…

[C][数据结构][时间空间复杂度]详细讲解

目录 0.铺垫1.时间复杂度 -- 衡量算法的运行快慢1.是什么&#xff1f;2.大O的渐进表示法 2.空间复杂度 - 衡量算法所需要的额外空间3.常见复杂度对比 0.铺垫 时间是累计的空间是不累计的&#xff0c;可以重复利用 1.时间复杂度 – 衡量算法的运行快慢 1.是什么&#xff1f; …

Python R用法:深度探索与实用技巧

Python R用法&#xff1a;深度探索与实用技巧 在Python的广袤生态系统中&#xff0c;R语言的功能和特性通过某些库得以复现和扩展&#xff0c;使得数据分析师和科学家能够在同一个平台上无缝切换。本文将分四个方面、五个方面、六个方面和七个方面&#xff0c;深入剖析Python中…

15.2 测试-网格测试、基准测试与测试覆盖率

1. 网格测试 函数或方法的输出因收到的输入而异&#xff0c;如果为每个输入专门编写一个测试用例&#xff0c;将导致大量的重复代码。 不妨将输入的各种组合存放在网格之中&#xff0c;只编写一个测试用例即完成对所有输入的测试&#xff0c;比如象下面这样&#xff1a; va…

大模型卷出新高度|暴雨AI服务器M8878助解算力之困

当今世界&#xff0c;作为新一轮科技革命和产业革命的重要驱动力&#xff0c;AI已经成为“兵家必争之地”。我国也在政府报告中首次将“人工智能”行动纳入国家战略&#xff0c;开启了以人工智能为核心的数字经济高质量发展的新时代。 当今世界&#xff0c;作为新一轮科技革命…