首页 > 编程语言 >java 程序打包成 exe安装包 兼容性强

java 程序打包成 exe安装包 兼容性强

时间:2023-01-12 12:22:59浏览次数:38  
标签:bat exe java oShellLink jar vbs 安装包

找了很多资料,网上的打包成exe用的最多的是 exe4j。确实一段时间我也是用exe直到后来开发一个应用的时候出现了兼容性问题。于是再次研究,如果你是想要吧开发好java桌面应用打包成一个exe放在朋友的电脑上运行,那可以继续看下去。

需要准备以下文件:

image
image

需要准备的列表

1.java运行环境 jre 我这里是 jre1.8.0_202

2.可运行的jar包 也就是java程序 我这里是 fileEncryption-1.0-SNAPSHOT-jar-with-dependencies.jar

3.bat文件,用于启动 jar 我这里是 start.bat

4.屏蔽bat启动的cmd黑框弹出 我这里是 启动.vbs

5.安装后在桌面创建快捷方式 我这里是 自动快捷.vbs

6.图标 我这里是 suo.ico 最好是ico的格式

首先确认打包好的jar是可以正常启动的,启动jar包命令

java -jar 你自己的jar名称.jar

编写start.bat启动文件,jar修改为自己的文件 java.exe 修改为自己的jre路径

bin\jre1.8.0_202\bin\java.exe -jar bin\fileEncryption-1.0-SNAPSHOT-jar-with-dependencies.jar

点击start.bat测试启动,弹出cmd黑框和成功运行程序

image

这时候我们希望去掉cmd,编写启动.vbs文件

set ws=WScript.CreateObject("WScript.Shell")
ws.Run "start.bat",0

点击启动测试 启动.vbs 这时候就不会弹出cmd黑框了

image

编写 自动快捷.vbs 文件 其中一些参数根据自身情况修改

set WshShell = WScript.CreateObject("WScript.Shell")
strDesktop = WshShell.SpecialFolders("Desktop")
currentpath = createobject("Scripting.FileSystemObject").GetFolder(".").Path
set oShellLink = WshShell.CreateShortcut(strDesktop & "\加解密工具V5.0.lnk")
oShellLink.TargetPath =currentpath & "\启动.vbs"
oShellLink.WindowStyle = 1
oShellLink.Hotkey =""
oShellLink.iconLocation =currentpath & "\suo.ico,0"
oShellLink.Description ="[email protected]"
oShellLink.WorkingDirectory =currentpath
oShellLink.Save

全选文件,右键添加到压缩文件

image

创建自解压格式压缩文件

image

选中高级>>>自解压选项

image

【常规】填写名字,自定义文件夹 这里是 myfile 你可以自己修改为软件名称

image

【设置】中如下填写 自动快捷.vbs,用于解压后创建桌面快捷

image

【更新】 勾选覆盖所有文件 根据自身情况 选择覆盖前询问也可以

image

【文件和图标】如图选择图标文件

image

点击确认出现如下文件

image

搞定,接下来就可以发给朋友去安装了

测试安装如下图

image

安装完成桌面出现图标

image

安装目录名字为 myfile 刚刚自己写的 你写什么就是什么

image

点击桌面图标运行成功

image

如果这个对你有帮助,点个赞呗,如果遇到问题可以评论留言

标签:bat,exe,java,oShellLink,jar,vbs,安装包
From: https://www.cnblogs.com/wangbingchen/p/17045912.html

相关文章

  • 通过事件总线EventBus/AsyncEventBus进行JAVA模块解耦 (史上最全)
    文章很长,而且持续更新,建议收藏起来,慢慢读!疯狂创客圈总目录博客园版为您奉上珍贵的学习资源:免费赠送:《尼恩Java面试宝典》持续更新+史上最全+面试必备2000页+面......
  • Java的基础语法
    注释、标识符、关键字Java中的注释有三种单行注释多行注释文档注释publicclassHelloWorld{/*这是第一个Java程序*它将输出HelloWorld*这是一......
  • JavaScript的深拷贝实现
    在实际开发当中,我们经常会遇到要对对象进行深拷贝的情况。而且深拷贝这个问题在面试过程中也经常会遇到,下面就对本人在学习过程中的收获,做以简单的总结。什么是浅拷贝,什么是......
  • java:手动实现一个IOC
    面试官特别爱问SpringIOC底层实现,Spring源码晦涩难懂怎么办呢?跟着老师手动实现一个miniioc容器吧,实现后再回头看Spring源码事半功倍哦~,就算直接和面试官讲也完全可以哦,类......
  • Java核心基础:三元运算符,附三个案例和源码
     格式三元运算符也叫三目运算符,即由三部分组成,格式如下: (关系表达式)?表达式1:表达式2;执行流程先执行关系表达式,看其结果是true还是false.如果是true,则执行表达式1如......
  • Java算法之冒泡排序(超详细)
    冒泡排序基本思想核心思想是从头开始让相邻的两个元素进行比较,符合条件就交换位置,这样就把最大值或者最小值放到数组的最后面了;接着再从头开始两两比较交换,直到把最大值或者......
  • java,class文件批量反编译成class文件,免安装
     官方文档ThisisREADMEfileforJad-thefastJavaDecompiler.Jadhomepage:http://www.kpdus.com/jad.htmlCopyright2001PavelKouznetsov([email protected]......
  • javaScript教程
    一、发展历程javaScript是Netscape为了解决互联网初期网速过慢,而导致用户体验差而诞生的用在客户端语言。比如一次用户输入提交等待几十秒后,服务器悠哉悠哉的返回了个‘x......
  • eclipse 安装 java 内存分析工具 Memory Analyzer
    获取地址:去下面链接地址获取最新的版本​​http://www.eclipse.org/mat/downloads.php​​可以使用在线升级或者离线两种方式完成。下面介绍下载线升级:UpdateSite: ​​ht......
  • 线程池使用ExecutorService 多线程处理队列任务
    最近转到银行工作,在做最核心的财务账务部分,对我来说是一个比较新的东西,工作也已经四年有余,接触一些新的东西,也是不错,每天也累得像狗...不说了。/捂脸接下来说一种非常实用的......