【问题标题】:Create Windows Installer for Java Programs为 Java 程序创建 Windows 安装程序
【发布时间】:2011-07-20 18:52:56
【问题描述】:

我是 Java 初学者。

我已经创建了一个简单的 GUI 应用程序,它会显示“hello world”标签。

但是,如何从 .java 或 .jar 为 windows 创建安装程序。 假设我创建了一个有用的应用程序并想与我的朋友分享 无需知道什么是 JRE 或如何下载 JRE 即可将其安装在他们的 PC 中。

【问题讨论】:

    标签: java deployment desktop-application installation


    【解决方案1】:

    来自here

    Java 中的开源安装程序生成器

    IzPack

    IzPack 是 Java 平台的安装程序生成器。它生成轻量级安装程序,可以在任何有 Java 虚拟机可用的操作系统上运行。根据操作系统的不同,它可以通过双击或 shell 上的简单“java -jar installer.jar”来启动。最常见的用途是为 Java 平台分发应用程序,但您也可以将其用于其他类型的项目。 IzPack 的主要好处是它提供了一种干净且独特的方式来将项目分发给使用不同操作系统的用户。

    VAInstall

    VAInstall 是一个用 Java 编写的多平台安装程序。它是根据 GNU GPL 许可证 2 分发的。通过一个简单的配置文件,它允许打包程序从磁盘上的各个位置选择文件和目录,而不仅仅是像其他安装程序那样的一个根目录。打包程序可以完全重新组织目标主机上的文件和目录。他可以选择目标主机的安装模式(图形、xtra、文本或ansi)。

    Packlet 是一个简单的 Java 安装工具。 Packlet 类似于 zip 或 tgz 文件:它将应用程序打包成可以分发的单个压缩文件。 Packlet 文件是 Java 类文件,可以在任何安装了 Java 2 运行时环境的机器上执行。执行一个 packlet 会打开一个安装程序 gui 来配置和解压应用程序。

    解除 Java 安装程序

    Lift Off Java Installer 是 Java 应用程序的安装程序。亮点是自解压类文件、在目标系统上安装 Java 的最低要求以及跨平台安装。

    迷你安装程序

    一个用 Java 构建自安装程序的简单包。该过程是脚本驱动的,结果是一个独特的 JAR 文件,用户可以双击它来执行类似向导的安装过程。

    JS平滑

    JSmooth 是一个 Java 可执行包装器,它可以从 jar 文件生成标准的 Windows 可执行二进制文件 (.exe)。它使 Java 部署更加顺畅和用户友好,因为它能够自行找到 Java VM。当没有可用的 VM 时,它会向用户提供反馈,并可以将默认 Web 浏览器启动到解释如何下载 Java VM 的 URL。注意:不是完全用 JAVA 编写的

    Launch4J

    Windows 本地可执行 (.exe) java 应用程序包装器。提供原生启动画面、应用程序图标、搜索 JRE 或使用捆绑的 JRE、启动失败反馈、传递命令行参数。

    AntInstaller

    AntInstaller 是一个安装程序框架,它使用一个简单的 XML 文件来定义 UI,并使用 Apache Ant 作为后端。因此,安装程序可以做任何 Ant 可以做的事情,并且与 Ant 的扩展机制兼容。安装程序可以打包为自解压 Jar,并且可以从命令行或 Swing GUI 运行。 AntInstall 也可以用作现有 Ant 构建的 GUI 前端。

    抗原

    Antigen (Ant Installer Generator) 是一个获取 Ant 构建脚本的工具,将其与 GUI 结合起来,并将其打包为可执行的 jar 文件。它的主要目的是从 Ant 脚本创建强大的图形安装程序。

    Java 服务包装器

    Wrapper 可以将 Java 应用程序安装为 Windows NT 服务。 Wrapper 提供的脚本还使得在 UNIX 系统上安装这些相同的 Java 应用程序作为守护进程变得非常容易。 Wrapper 可以正确处理 Windows 下的用户注销、服务依赖项以及运行与桌面交互的服务的能力。

    【讨论】:

    • 我在您的网站上找到的所有安装程序都需要安装 Java VM 或自动下载并安装它。如果您的用户在具有受限权限的机器上工作,这不是一个选项。但是,@Amri 提出的问题是如何从可以按原样启动的 jar 中创建 exe。
    • 大部分都需要机器上的 JRE。 Launch4J 可以从该列表中回答这个问题,也许是另一个。
    【解决方案2】:

    部署应用。来自使用Java Web Start 的网站。使用deployJava.js(从 JWS 信息页面链接)确保用户拥有最低 Java。

    更新

    Java 插件(用于部署 applet 和 webstart 应用程序)在 Java 9 前后被弃用,并在不久之后从 API 中删除。 这不再是一个可行的选择。

    【讨论】:

    • 尽可能始终以最佳方式使用
    • Java Web Start 应用程序启动器可以正常工作,如果您尝试通过需要服务器来托管所需文件的网络(即web-deployed)部署 Java 应用程序。它仅将 JAR 文件从 Web 服务器传输到客户端。不过,它类似于 .NET Click Once 技术。如果您尝试将 CD/DVD 等物理介质作为收缩包装产品进行分发(正常分发方法),则它不起作用。
    • @eee "如果您试图通过 CD/DVD 等物理媒体作为收缩包装产品进行分发(正常分发方法),则它不起作用。当然。一旦通过软盘交付软件是正常的。我目前有 3 台工作电脑。 486 有软盘和 CD 驱动器。 Intel Core 2 Duo 具有 CD/DVD、USB 和互联网。上网本有 USB、读卡器和互联网(例如,没有 CD DVD)。由于闪存驱动器 (USB) 和数字存储卡价格昂贵,我认为在线分发最适合这十年中的大多数最终用户。
    • 很快,Oracle 将不允许任何小程序或 JWS 应用程序运行,除非它们已获得经过验证的发布者的批准。只是对任何从 Google 提出这个问题的人(就像我一样)的一个友好警告,除非开发人员愿意支付所需的费用来获得验证,否则这个答案很快就会过时。 java.com/en/download/help/appsecuritydialogs.xml#selfsigned
    • Java Web Start 曾经是一个很好的解决方案,但现在它有很多坑。相反,您将希望在 Java Web Start 之上使用特定于平台的安装程序,或者代替。
    【解决方案3】:

    您可以使用WiX 创建 Windows Installer 程序包。该软件包将包括 JRE 二进制文件和您编译的应用程序(jar 文件)。安装后,安装程序会将您的文件解压缩到用户的计算机,创建启动应用程序的快捷方式 (<i>app-path</i>\jre\bin\javaw.exe -jar <i>app-path</i>\<i>your-app</i>.jar)。

    请参阅 Redistributing the JREREADME 的注释。

    【讨论】:

      【解决方案4】:

      您可以使用NSISInno Setup

      【讨论】:

        【解决方案5】:

        我使用一个名为 JSmooth 的程序。这会将 java .jar 文件转换为可执行文件。然后我获取这些可执行文件并使用 InstallShield 创建一个安装程序。 InstallShield 允许您创建高度可定制的安装程序。您可以使用免费的“轻量版”。很容易做,也很容易添加到构建脚本中。

        【讨论】:

          【解决方案6】:

          您可以在 Eclipse IDE 下使用 Ant 任务工具与 InnoSetup 和 Launch4j 为基于 Java 的程序创建具有专业外观的基于 Windows 的 EXE 安装程序:How to create an exe file in java

          【讨论】:

          • 这对 Macintosh 和 *nix 的用户有什么作用? OP 从未提及针对 Windows。
          • @Andrew Thompson:OP 确实提到了 Windows...他说But, how can I create an installer from .java or .jar for windows :) Apache Ant 确实支持一些非 Windows 操作系统;无论如何,它是一个基于 Java 的工具。对于非 Windows 操作系统,您需要更改 Ant 任务脚本中的工具/脚本(这不是我的经验)。
          • "OP 确实提到了 Windows" 我的错。即使在我的 2nd 阅读中也错过了! :(
          【解决方案7】:

          您可以使用 install4j 为 java 项目的 jar 文件创建 exe 文件,并使用 Inno Setup Compiler 文件为项目创建安装程序。这个 ts Youtube 视频了解如何创建 exe 和安装程序

          video for create the exe and installer

          【讨论】:

            【解决方案8】:

            基本上你必须把你的项目保存在jar中,然后转换成exe,你可以使用jar4exe或其他软件。当您拥有 exe 文件时,请使用 Inno Setup Compile 等安装程序软件。在所有这些步骤之后,您的项目将准备好安装在 windows、mac 或 linux 平台上。祝你好运。

            【讨论】:

            • Inno Setup 只能在 Windows 上运行
            • 是的,Inno Setup 只是在 windows 上运行,它只是一个安装软件,但是你的 exe 文件可以在 windows、mac 和 linux 上运行,感谢 jar4exe。
            【解决方案9】:
            1. 安装exe4j

              • 您将使用它从 jar 文件创建 .exe 文件
            2. 安装inno setup编译器

              • 这用于创建安装程序

            一个过时但相关的视频来指导您完成 https://www.youtube.com/watch?v=kSmhIunxVW4

            【讨论】:

              猜你喜欢
              • 2015-06-27
              • 1970-01-01
              • 2011-04-15
              • 1970-01-01
              • 1970-01-01
              • 2012-09-23
              • 2013-05-13
              • 1970-01-01
              • 1970-01-01
              相关资源
              最近更新 更多