将.jar转换为适用于Windows、Linux和Mac的应用程序 [英] Convert .jar to an application for Windows, Linux & Mac

查看:38
本文介绍了将.jar转换为适用于Windows、Linux和Mac的应用程序的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我用Eclipse制作了一个Java应用程序(在*.jar中导出),我想将它导出到Windows(.exe)、Linux(.?)和MAC(.?)。我没有任何Linux或MAC机器,所以我不知道每个机器都需要什么扩展文件。所以我有几个问题:

  • 对于Windows,我使用Launch4j创建了我的*.exe文件,但是否有用于MAC和Linux的同等文件?

  • 我的应用程序将选项保存到Windows注册表中(我使用了"JavaRegisrtyWrapper"库)。是否有用于MAC和Linux的"注册表"(以及如何在那里读/写信息)?

  • 当用户尝试在下载后启动*.exe文件时,是否可以避免出现Windows警告"未知发布者"?(我会在MAC和Linux上遇到同样的问题吗?)我尝试创建自己的证书,并使用"signtool.exe"对文件进行签名,但不起作用。

谢谢!

编辑:在将*.jar文件转换为任何其他格式之前,我必须修改代码以获取用户的操作系统,并针对每种情况修改"Documents"文件夹。我认为os.name可以满足第一个请求,但我可以将user.home + "Documents"用于Windows、Linux和Mac(如果此文件夹存在...)吗?

推荐答案

运行JAR应用程序的脚本

在Linux和Mac OS上,您可以创建运行.jar文件的bash脚本:

#!/bin/bash java -jar application.jar

基于Unix的系统上的Windows注册表等效项

在Linux和Mac OS上没有对应的Windows注册表。您可以将您的配置存储在文本文件中。计算机特定的配置通常存储在/etc目录树中。

这里有一个类似的超级用户问题:https://superuser.com/questions/295635/linux-equivalent-of-windows-registry

签署Windows EXE文件

若要对Windows exe文件进行签名,可以尝试使用Microsoft's Sign Tool

这里有一个类似的堆栈溢出问题:Signing a Windows EXE file

这篇关于将.jar转换为适用于Windows、Linux和Mac的应用程序的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆