3

我们使用 JDK8 编写了一个 JavaFX 应用程序,现在我们希望不仅使用 jar 文件部署我们的应用程序,而且还提供一个打包的 zip 文件:

  1. jar文件my.jar
  2. 一个简单的.bat(或.sh)文件.\jre\bin\java.exe -jar my.jar
  3. jre文件夹中的 jre 本身

理想情况下,我们希望创建三个这样的包(zip 文件):用于 Windows、Linux、MacOS。这对最终用户来说更容易,并且省去了用户下载适当的 JRE、安装它等的麻烦。

因此,我们现在必须决定将合法的 JRE 包含到我们的 zip 文件中(从技术上讲,我们可以简单地捆绑 Oracle JRE - 但 Oracle TOS 明确禁止 ISV 分发)。

由于最近的 Oracle 许可开发不仅适用于 Java,还适用于 JavaFX、JavaFX等的单独许可,我真的很难找到正确使用许可友好AdoptJDKOpenJFX,OpenJDK等来创建上面的包。

允许我们形成这个 JRE/JavaFX 包的最明智的方法是什么?

我们应该包括哪个jre还包含正确许可的JavaFX运行时?

jre我们应该将分离与JavaFX实现捆绑在一起吗?

4

1 回答 1

0

允许我们形成这个 JRE/JavaFX 包的最明智的方法是什么? 我们应该包括哪个 jre,它还包含正确许可的 JavaFX 运行时? 我们是否应该将 jre 与 JavaFX 实现分开捆绑?

Oracle 版本两者都有,但您不能将其作为商业产品分发(从技术上讲,您可以将其用于旧版本)。

对于 JRE 8/Java 8 应用程序 - 使用 amazon coretto 发行版,它与两者捆绑在一起。还有其他发行版,但我更相信亚马逊会保持最新状态,因为他们有动力让他们的云客户保持快乐和安全。 https://aws.amazon.com/corretto/

从长远来看,您可能会被迫升级到 JRE 11,其中所有 JRE 的工作方式相同,并且 JFX 为所有构建单独捆绑。无论哪种方式,您都无法在不支付 Oracle 费用的情况下分发任何 Oracle 版本。

于 2019-10-07T17:12:25.367 回答