以前我在 Red Hat 提供的 Oracle Java SE 中使用 JavaFX 开发应用程序,但它似乎不再像https://access.redhat.com/articles/3253281那样提供。但是,来自 rhel-7-server-rpms 存储库的 OpenJDK 似乎没有随 JavaFX 一起提供。
除了从 Red Hat 提供的存储库之外安装软件包之外,还有更好的方法吗?我不想用自编译的 OpenJFX 二进制文件一一测试每个环境。
以前我在 Red Hat 提供的 Oracle Java SE 中使用 JavaFX 开发应用程序,但它似乎不再像https://access.redhat.com/articles/3253281那样提供。但是,来自 rhel-7-server-rpms 存储库的 OpenJDK 似乎没有随 JavaFX 一起提供。
除了从 Red Hat 提供的存储库之外安装软件包之外,还有更好的方法吗?我不想用自编译的 OpenJFX 二进制文件一一测试每个环境。
Oracle 提供了可以下载的 RPM:
这些 RPM 不在 YUM 存储库中,您只需将红帽框指向即可。
您可以下载 RPM 并创建自己的 rum 存储库,然后将您的自定义存储库添加到每台目标机器的 yum 存储库列表中,然后使用 yum 将 rpm 安装到您的机器上。您需要对此进行限制,以便我认为它不会完全向公众开放(以满足 Oracle Java 分发要求)。
如果您构建了自己的 Java SE 版本,其中包括来自 OpenJFX 源的 JavaFX(或者您可以为您的目标操作系统找到其他人构建的包),那么您可以在自己的存储库(或任何其他公共存储库),或者如果其他人已经将包放在那里,则从公共存储库中提取包。
如果您不需要存储库,并且可以将 rpm scp 到相关机器,那么您可以直接在机器上安装 rpm,而无需设置自己的自定义存储库。
如果您将应用程序打包为一个独立的应用程序,那么应用程序安装包本身将包含 JRE,因此您无需担心在机器上单独安装它(并且也不会潜在地遇到以下情况:用户安装了与您的代码不兼容或测试的运行时版本)。也许那是您的首选路径。
我不知道 RedHat 针对 OpenJDK 发布和构建到其存储库的政策。如果他们将 JavaFX 包含在其存储库中的 OpenJDK 发行版中,或者为 OpenJFX 提供一个单独的包(类似于 Ubuntu 所做的),那就太好了。也许他们可能会在他们的 OpenJDK 9 发行版中包含 JavaFX。他们有关于RHEL Support for OpenJDK 9的信息,所以也许他们在那里说了什么(我无法阅读,因为我不是 RHEL 订阅者)。如果您与 Redhat 签订了支持合同并且该信息在他们的站点上不可用,那么您可以 ping 他们并询问他们有关托管在其存储库中的 OpenJFX JavaFX 发行版(查看它们是否存在或是否有计划把它们放在那里)。