- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我即将利用 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 架构师)在他的演讲中多次解释了这一点(1、2 或 any 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,但 OpenJFX 和 JavaFX 可以互换使用,因为没有真正的区别。
关于java - Scala + OpenJFX + OpenJDK,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56239160/
首先我觉得奇怪的是 OpenJDK project page 上没有错误跟踪器的链接。 ,然后我找到了bugs.openjdk.java.net ,但仅适用于经过认证的项目成员。象牙塔之外的人如何贡献
关闭。这个问题需要更多focused .它目前不接受答案。 想改善这个问题吗?更新问题,使其仅关注一个问题 editing this post . 去年关闭。 Improve this questio
openjdk-7-jre-headless 和 openjdk-7-jre 有什么区别。 当我在 Ubuntu 的终端中输入 java 时,它提示 openjdk-7-jre-headless 而不
我无法理解 Java JRE 的一些基础知识。 我需要在嵌入式系统中运行 Java 代码,为此我需要在 Linux 内核中安装一个最小的 Java 运行时环境,也就是说,执行 Java 二进制文件所需
我正在使用 Redhat 6,我正在使用 java 1.6,因为我需要使用 java 1.6。我使用更新我的红帽yum update 和 openjdk 1.8 已自动安装。我尝试使用 删除 open
我在 Windows 上开发,在 Linux 上部署。我找不到windows和linux版本相同的OpenJdk。因此,我为 Windows 安装了 openjdk_1.7.0_u80-unoffic
Wildfly 13 和 Wildfly 14 支持哪些 OpenJDK 版本?有人可以向我提供支持矩阵吗? 最佳答案 我使用 WildFly 14 和 Open JDK 11 - 到目前为止没有任何
需要使用需要openjdk7的程序。运行 Debian 9 Mate。 当我尝试安装时获取以下内容 $sudo apt-get install openjdk-7-jre openjdk-7-jre-
我正在使用带有 heroku 插件的 IntelliJ 14,并且成功连接到 heroku。但是我无法对 heroku 进行更改。 我的应用程序使用 grails 2.5 和 Java 8。 似乎 h
在最近的许多情况下,但现在我尝试使用安装程序,它会抛出错误并显示“Java 未安装”之类的内容,即使 JAVA_HOME 设置为 Windows 10 64x 的 AdoptOpenJDK 安装程序安
我使用存储库 ppa:openjdk-r/ppa 在 ubuntu 14.04 LTS 上安装 openjdk-8-jre-headless。从今天早上开始一切正常,但现在安装因错误消息而中断 ope
这个问题在这里已经有了答案: Difference between openjdk-6-jre, openjdk-6-jre-headless, openjdk-6-jre-lib (2 个回答) 关
根据 https://github.com/docker-library/docs/blob/master/openjdk/README.md#make-jvm-respect-cpu-and-ram
我正在使用 IKVM 将 java 应用程序包装到 dll 中。我对 IKVM 不是特别熟悉,所以我提前为没有提供足够的信息表示歉意。无论如何,我正在使用一个 C# 库来调用 IKVM 创建的 dll
当我安装 netbeans 时,它让我可以选择 java 环境,我有 3 个选项,oracle java 和这两个(java-1.7.0-openjdk-i386 和 java-7-openjdk-i
使用brew和/或brew cask安装java 8和sbt显然是可能的,我遇到的问题是,brew 将 java 13 安装为 sbt 依赖项, 而且我不知道返回到默认 java 8 的一般方法,因为
关闭。这个问题不符合Stack Overflow guidelines .它目前不接受答案。 这个问题似乎不是关于 a specific programming problem, a softwar
我已经在 Ubuntu 机器上运行这个旧的 Caucho Resin (4.0.41) 很多年了。我需要停用该服务器,因此我尝试在新的 Ubuntu 18.04.4 服务器上设置树脂 4.0.64,经
我刚刚开始使用 Playframework (Java) 开发一个应用程序,我认为使用支持 Playframework 的 Heroku 测试它是个好主意。 在 Heroku 上 Playframew
我尝试安装支持 Java 11 的最新稳定 Jenkins 版本。因此,在安装 Java 11(JDK) 后,我收到 Jenkins 的错误,指出发现了不正确的 java 版本。 因此卸载了 Java
我是一名优秀的程序员,十分优秀!