使用 Java 部署 Jar



我想知道如何将Java本身包含在jar文件中,这样人们就不必已经安装了Java。是否可能,如果是,您如何做到?

要首先

执行jar,您需要安装java。因此,如果要包含 JRE 安装程序,最好将 JRE 安装程序包含在单独的文件中。此外,您必须为每个目标平台使用不同的安装程序,因此由于文件大小膨胀,这对于一般分发来说有些不切实际。

这就像问"我们可以把下蛋的鸡包括在蛋里吗? 回答,没有。

至于解决更大的问题,至少有一种策略可能适用于从链接启动的小程序、JWS 应用程序和(可能)单个桌面应用程序罐(不过我从未尝试过)。 此方法使用 JS 在提供指向 Jar 的链接之前检查正确的 JRE。

为了让计算机做某事,你需要有操作系统知道如何处理的代码。 大多数现代操作系统不知道如何处理Java代码,除非你安装Java运行时引擎 - 对他们来说JAR文件只是ZIP文件。

因此,您需要一些可以直接执行的代码(无需Java),最简单的代码就是使用Java启动器。 许多存在 - 参见Java打包工具 - jsmooth,launch4j,onejar的替代品 - 但例如launch4j被维护并支持<path>标签来指定所包含JRE的相对路径。 不幸的是,这些相当大,但您可以提供两个版本。 一个带有 JRE,一个没有(然后提示用户安装 JRE)。

最新更新