JEP 12:预览语言和 VM 特性 - 可能的使用见证

JEP 12: Preview Language and VM Features - possible usage testimony

我偶然发现 JEP 12 搜索 JDK 12 并且很感兴趣。

Summary: A preview language or VM feature is a new feature of the Java SE Platform that is fully specified, fully implemented, and yet impermanent. It is available in a JDK feature release to provoke developer feedback based on real world use; this may lead to it becoming permanent in a future Java SE Platform.

根据这个问题的回答,我只想问以下问题:

Does this mean that usage of new features will now be as simple as downloading a support jar and 'plugging' it into our projects?

没有。这是关于在 Java 语言和 JVM 中启用 "preview" 功能,以便功能在最终确定之前可以获得更广泛的曝光和反馈(通过适当的选择加入)。 (如果您可以通过放入 JAR 文件来启用实验/预览功能,则不需要此机制...)

事实上,使用 JEP 中描述的 "preview" 机制:

  • 任何支持预览功能的代码都已经是 JRE 的一部分/JDK,并且
  • 可以通过为 javacjava 命令提供额外的命令行选项来启用这些功能。

Can anyone share any usage experiences of this JEP? Actual code?

从 Java 11 开始将支持对预览功能的编译器和 VM 支持,我们可能会在 Java 12 中看到第一个预览功能。查看早期访问版本发行说明,他们没有明确提及任何 "preview" 功能。然而

"experiences" 太早了。 (而且我不确定他们会告诉你什么。JEP-12 机制是启用功能的机制......而不是功能本身。)

I also looked into the JIRA issue related to this JEP, it seems that this feature is currently completed but unresolved.

issue 是一个 "umbrella" 问题(如果这是正确的术语)。深入查看相关问题列表,您会看到其中两个问题仍未解决。然而,三个相关问题已得到解决,因此看起来 JEP-12 支持将进入 Java 11.

更新:2019/08/22 - 现在只有一个关于改进 javac 编译器消息的相对较小的问题。