Convert .jar to an application for Windows, Linux amp; Mac(将.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的应用程序的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持编程学习网!
本文标题为:将.jar转换为适用于Windows、Linux和Mac的应用程序
基础教程推荐
- Spring Boot Freemarker从2.2.0升级失败 2022-01-01
- 如何对 HashSet 进行排序? 2022-01-01
- 如何在不安装整个 WTP 包的情况下将 Tomcat 8 添加到 Eclipse Kepler 2022-01-01
- 如何使用 Stream 在集合中拆分奇数和偶数以及两者的总和 2022-01-01
- 由于对所需库 rt.jar 的限制,对类的访问限制? 2022-01-01
- 如何强制对超级方法进行多态调用? 2022-01-01
- 首次使用 Hadoop,MapReduce Job 不运行 Reduce Phase 2022-01-01
- 在螺旋中写一个字符串 2022-01-01
- Java 中保存最后 N 个元素的大小受限队列 2022-01-01
- 如何使用 Eclipse 检查调试符号状态? 2022-01-01