java - 如何创建我自己的跨平台安装程序?

标签 java installation install4j izpack

我想使用 java 创建自己的安装程序,我不想使用任何安装程序,而是创建一个。

我已经阅读了所有其他安装程序,例如 izpack、install4j、InstallJammer、InstallBuilder 等。我已经搜索了有关创建安装程序的信息,但找不到任何有用的资源。

我应该在哪里以及如何启动我的安装程序,以便它执行其他安装程序执行的所有操作,例如安装路径、压缩/解压缩、注册到添加/删除程序面板、需要时卸载程序等。

提前致谢。

最佳答案

首先,想想您是否真的需要安装程序。正如评论中提到的,Java 应用程序可以轻松地作为单个 JAR 进行分发(通常是一个胖 JAR,其中合并了所有依赖项,请检查: How can I create an executable JAR with dependencies using Maven? )。

如果您确实需要除可执行 JAR 之外的其他文件,您仍然可以通过在 JAR 周围分发带有一些辅助文件结构的压缩二进制包来避免安装程序。任何人都可以将其提取到系统中的某个位置并运行主文件。如有必要,您还可以在此结构的根文件夹中提供批处理文件/shell,以帮助启动您的应用程序。

如果您仍然希望对用户来说听起来不太技术性,您还可以使用 Launch4j ( http://launch4j.sourceforge.net/ ) 将该 JAR 打包成一个带有迷人图标的可执行文件。您甚至可以在文件结构中嵌入 JRE,这样用户就不需要安装 Java。

在深入研究安装程序的复杂性之前,您还可以使用自解压存档来询问用户将文件放在哪里。许多著名的解决方案都是这样工作的。也许您甚至可以隐藏文件提取阶段,并在每次要求启动应用程序时在后台执行此操作(检查此: https://www.excelsiorjet.com/kb/35/howto-create-a-single-exe-from-your-java-application )。

如果您满足以下条件,我只能看到真正需要安装程序: 需要检查以前的系统状况(空间、内存、依赖项);授予特殊文件夹和用户权限;在默认操作系统上安装您的程序程序文件夹;设置环境变量或 Windows 注册表项;创建桌面快捷方式或系统菜单项;以及其他一些棘手的细节。在这种情况下,请考虑使用现有的安装程序解决方案,因为在成功完成此类任务之前将涉及大量艰苦的工作。您已经必须付出很大的努力来控制您的应用程序代码库,尤其是其安装程序的另一堆代码!

关于java - 如何创建我自己的跨平台安装程序?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36493700/

相关文章:

java - 手动界定的复合 Material 中的 SWT 布局

windows-10 - 避免使用authenticode cert签名的install4j安装程序出现 "Windows protected your PC"消息

install4j - 在install4j中,变量sys.adminRights有什么作用?它自动出现在响应 var 文件中

linux - -bash : ./configure: 没有这样的文件或目录<--尝试安装arping

xcode - Xcode方案构建目标中的构建顺序

ubuntu - “Command not found” 安装过程出错

java - Install4j在回滚期间删除response.varfile

java - 用 Java Applet 制作一条蛇

java - 如何在 Java 中打开多个 TCP 连接

java - 死代码 android setMultiChoiceItems