我们通过Java编写好程序之后打包为jar包运行,通过下面的命令
java–jar example.jar
这里是运行在我们自己的机器上面。但是要想将程序运行在其他机器上的话,就需要麻烦一些了,本文就来介绍一下这种方法,使用的工具为exe4j,通过文章末尾的附加信息可以找到exe4j的下载地址
exe4j专门用作将java程序发布到windows操作系统环境中,无论是作为service服务、界面程序还是命令行程序它都可以完成,并且非常出色。
下面通过一次完整的操作流程学习exe4j这个程序,这里使用的exe4j版本为4.5.2
1. 在第一步可以加载之前操作保存的配置文件,通过这里可以看到人家老外对用户体验的确注意得很好,由于这里我们没有所以只能一步一步来了
2. 这里我们只有一个jar文件,所以选择使用JAR IN EXE。如果即将包装的程序中还包含目录或者非jar文件,是不能使用这个模式的,只能选择使用Regular mode。
3. 设置程序名称和生成exe程序文件的输出目录
4. 设置执行程序的类型、名称、图标、工作目录(默认为.代表程序当前目录的意思),还可以在高级选项中重定向程序日志、版本信息、生成64bit程序、程序的运行级别等等,这里需要注意一点如果你的jar程序需要接受参数的话,要将Allow –console patameter选项勾中。
5. 在这一步主要讲我们打好的jar文件通过这个绿色按钮添加进来,然后在main class中选择jar包的带有main函数的类。同时在这里还可以设置JVM允许参数,以及程序运行的本地库等等
6. 设置需要的JRE版本,若没有版本最高限制保持其为空即可。
重点来了,如果我们想要保证发布的程序可以在没有安装JRE的机器上面运行的话,需要连同JRE一起发布到其他机器上面去。在高级选项Search sequence中要设置exe程序与jre的相对目录,我这里为.\jre7并且将搜索次序设置在了最前,说明应该将exe程序与jre7放在同一个目录下,程序运行时会首先从该jre7文件夹下面的bin目录寻找java.exe。如果没有找到就会依次向下寻找的搜索选项中寻找,如果一直没有找到就会报错。
**
**
7. 这里可以设置程序的启动画面,没有要求可以直接next
8. 设置程序运行错误的各种提示信息
9. 编译
10. 试运行生成的程序,还记得我们在第六步设置JRE的相对路径吗?(.\jre7),如果想要运行程序,需要将exe与JRE(文件夹名为jre7)与exe放置在同一目录下。如果机器没有在注册表和环境变量中设置JRE相关信息的话。
至此一个完整的加壳过程就完成了,第一次使用可能会出现这些哪些没有注意到的错误,不过通过摸索+细心就可以很快掌握这个好用的工具。
附加信息:
原网址: 访问
创建于: 2023-04-04 19:51:33
目录: default
标签: 无
未标明原创文章均为采集,版权归作者所有,转载无需和我联系,请注明原出处,南摩阿彌陀佛,知识,不只知道,要得到
java windows火焰图_mob64ca12ec8020的技术博客_51CTO博客 - 在windows下不可行,不知道作者是怎样搞的 监听SpringBoot 服务启动成功事件并打印信息_监听springboot启动完毕-CSDN博客 SpringBoot中就绪探针和存活探针_management.endpoint.health.probes.enabled-CSDN博客 u2u转换板 - 嘉立创EDA开源硬件平台 Spring Boot 项目的轻量级 HTTP 客户端 retrofit 框架,快来试试它!_Java精选-CSDN博客 手把手教你打造一套最牛的知识笔记管理系统! - 知乎 - 想法有重合-理论可参考 安宇雨 闲鱼 机械键盘 客制化 开贴记录 文本 linux 使用find命令查找包含某字符串的文件_beijihukk的博客-CSDN博客_find 查找字符串 ---- mac 也适用 安宇雨 打字音 记录集合 B站 bilibili 自行搭建 开坑 真正的客制化 安宇雨 黑苹果开坑 查找工具包maven pom 引用地 工具网站 Dantelis 介绍的玩轴入坑攻略 --- 关于轴的一些说法 --- 非官方 ---- 心得而已 --- 长期开坑更新 [本人问题][新开坑位]关于自动化测试的工具与平台应用 机械键盘 开团 网站记录 -- 能做一个收集的程序就好了 不过现在没时间 -- 信息大多是在群里发的 - 你要让垃圾佬 都去一个地方看难度也是很大的 精神支柱 [超级前台]sprinbboot maven superdesk-app 记录 [信息有用] [环境准备] [基本完成] [sebp/elk] 给已创建的Docker容器增加新的端口映射 - qq_30599553的博客 - CSDN博客 [正在研究] Elasticsearch, Logstash, Kibana (ELK) Docker image documentation elasticsearch centos 安装记录 及 启动手记 正式服务器 39 elasticsearch 问题合集 不断更新 6.1.1 | 6.5.1 两个版本 博客程序 - 测试 - bug记录 等等问题 laravel的启动过程解析 - lpfuture - 博客园 OAuth2 Server PHP 用 Laravel 搭建带 OAuth2 验证的 RESTful 服务 | Laravel China 社区 - 高品质的 Laravel 和 PHP 开发者社区 利用Laravel 搭建oauth2 API接口 附 Unauthenticated 解决办法 - 煮茶的博客 - SegmentFault 思否 使用 OAuth2-Server-php 搭建 OAuth2 Server - 午时的海 - 博客园 基于PHP构建OAuth 2.0 服务端 认证平台 - Endv - 博客园 Laravel 的 Artisan 命令行工具 Laravel 的文件系统和云存储功能集成 浅谈Chromium中的设计模式--终--Observer模式 浅谈Chromium中的设计模式--二--pre/post和Delegate模式 浅谈Chromium中的设计模式--一--Chromium中模块分层和进程模型 DeepMind 4 Hacking Yourself README.md update 20211011
Laravel China 简书 知乎 博客园 CSDN博客 开源中国 Go Further Ryan是菜鸟 | LNMP技术栈笔记 云栖社区-阿里云 Netflix技术博客 Techie Delight Linkedin技术博客 Dropbox技术博客 Facebook技术博客 淘宝中间件团队 美团技术博客 360技术博客 古巷博客 - 一个专注于分享的不正常博客 软件测试知识传播 - 测试窝 有赞技术团队 阮一峰 语雀 静觅丨崔庆才的个人博客 软件测试从业者综合能力提升 - isTester IBM Java 开发 使用开放 Java 生态系统开发现代应用程序 pengdai 一个强大的博主 HTML5资源教程 | 分享HTML5开发资源和开发教程 蘑菇博客 - 专注于技术分享的博客平台 个人博客-leapMie 流星007 CSDN博客 - 舍其小伙伴 稀土掘金 Go 技术论坛 | Golang / Go 语言中国知识社区
最新评论