jar应用转换成MacOSx应用(.app)方法

使用场景:适合强迫症患者,晚期,救不活那种。

主要因为,运行可执行jar包文件的时候(例如,Cknife、burp、cobaltstrike)会有个82年的小咖啡杯子在Dock上显示,强迫症对此不能忍….

之前写过一篇文章 MAC下,把java程序放入Dock方法

此方法虽然解决了在Dock上可以给小咖啡杯子穿件衣服了(应用logo),但是,蛋撕….菜单栏上出现了小齿轮,对是小齿轮…. 还不能弄掉这个小齿轮,弄掉了就退出了可执行jar程序了.So…. 挽救强迫症晚期一下。

 

挽救过程:

1.使用jar2app(github上有),认真阅读一下使用帮助即可。

安装后 jar2app –h 查看具体的帮助信息

2.经过多次尝试各种参数,最终使用下列参数生成app没毛病,稳定

jar2app xxxx.jar -n “xxxxjar软件标题 ” -i ~/Desktop/chooper.png.icns -b com.xxxx.www -v 1.0.0 -s 1.0.0 -m org.eclipse.jdt.internal.jarinjarloader.JarRsrcLoader -o

参数解释:

jar2app 后面写上要转换成app的jar 文件xxxx.jar

-n : 就是程序运行时,在菜单栏上的名称,如下图:

-i :转换成app之后,应用的logo,图片格式要使用.icns 后缀,这里提供一下png转.icns的url:https://iconverticons.com/online/

-b  :可有可无的东西,这个是真的可有可无,就是一软件基础信息

-v  :可有可无的东西,这个是真的可有可无,就是一软件基础信息

-s 可有可无的东西,这个是真的可有可无,就是一软件基础信息

-m :这个可以有,有了它软件启动能快一秒,没了它,app应用得去jar里面找main入口函数,所以,这个可以有,长生不老时间多的忽略这个参数。至于main入口在哪里看,用压缩包方式打开jar文件,里面找到META-INF文件下的文件打开看看就好,可以看到main主函数入口信息的。

-o:就是让这个程序执行的时候,在标题栏有个菜单可以显示,下图:

 


End

这一行,可能是我最近要经常用到的,对Cknife部分修改。

jar2app Cknife.jar -n “Cknife v1.0” -i ~/Desktop/chooper.png.icns -b com.Cknife.www -v 1.0.0 -s 1.0.0 -m org.eclipse.jdt.internal.jarinjarloader.JarRsrcLoader -o