gpt4 book ai didi

java - Scala + OpenJFX + OpenJDK

转载 作者:行者123 更新时间:2023-12-02 09:52:12 25 4
gpt4 key购买 nike

我即将利用 Scala 和 JavaFX/OpenJFX 启动一个新的 GUI 项目。

上次我参与时,Java 8 是最先进的,JavaFX 与 JDK 和 JRE 集成,Scala 使用 JDK 8 进行构建,Jigsaw 不在那里,Oracle 几乎提供了(免费)(错误)修复永远。

现在,几年后,事情发生了相当大的变化:Java 11+ 是我们应该使用的,JavaFX 已经被分拆,它的开发继续作为 OpenJFX(或多或少)独立于 Java,Jigsaw 就在那里Oracle 强制用户每 6 个月升级一次环境。

如果不是 Scala 似乎仍然在 JDK 8 上运行、OpenJDK 版本不包含 JavaFX 以及 AFAIR,OpenJFX 不适用于 Java 11 之前的 Java 版本这一事实,这一变化也不会太糟糕。

所有这些让我想到一个问题:使用 JavaFX/OpenJFX 作为 GUI 工具包来实现 Scala 应用程序需要使用什么工具堆栈?

在 JDK(不是 JRE!)11+ 中使用 Scala 安全吗?

最佳答案

Oracle forces the users to upgrade their environment every 6 months.

comments 中所述, 这不是真的。您甚至仍然可以使用 JDK 8。如果您想要 Oracle LTS,请使用 Java 11。还有其他公司为其他 OpenJDK 版本(RedHat JDK、Azure JDK...)提供 LTS。 Mark Reinhold(首席 Java 架构师)在他的演讲中多次解释了这一点(12any of his talks,在过去的 2 年里他每年重复 3 次)。

What tool stack would one use to implement a Scala application using JavaFX/OpenJFX as GUI toolkit?

我不是 Scala 开发人员,但使用任何最新的 OpenJDK 版本 Scala allows取决于您是否需要支持以及需要什么支持,无论支持哪个 OpenJDK 版本。我敢打赌 OpenJDK 11 会满足您的所有需求。

JavaFX 已从 Oracle JDK 中删除,但从未捆绑在 OpenJDK JDK1 中。使用 OpenJDK 时,您可以轻松地将 OpenJFX2 捆绑为依赖项,无论是作为外部 JAR 还是通过依赖项管理器(Gradle、Maven...)。 JavaFX/OpenJFX 网站是 https://openjfx.io并包含有关如何操作的说明。

JavaFX/OpenJFX 版本与 JDK 并行(或多或少)发布,并支持 OpenJDK 的 1 个版本(OpenJFX N 支持 JDK N-1 和 JDK N,也许 JDK N- 2...)。因此,如果您使用 OpenJDK 11,则可以使用 OpenJFX 11 或 12。OpenJFX 13+ 可以工作,但不能保证。

Is it safe to use Scala with JDK (not JRE!) 11+?

如果您的 Scala 版本支持,则 OpenJDK 11+ 和 OpenJFX 11+ 是安全的。请注意,JRE 已从 JDK 中删除,因此无关紧要。

1 OpenJDK JDK 是正确的引用方式,就像 Oracle JDK,但大多数人只是使用 OpenJDK。

2 OpenJFX 之于 JavaFX 就像 OpenJDK JDK 之于 Oracle JDK,但 OpenJFXJavaFX 可以互换使用,因为没有真正的区别。

关于java - Scala + OpenJFX + OpenJDK,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56239160/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com