Java 9是否包含Graal?

Zhe*_*lov 17 java java-9 java-10 graalvm

我正在读JEP 317.它说Graal(一个新的基于实验Java的JIT编译器)将成为JDK 10的一部分,但后来它说已经在JDK 9中可用了.那么,JEP 317的重点是什么呢?Java 9是否包含Graal?

Nam*_*man 19

从我的一个备忘录中,在linux-x64(开箱即用)上使用Graal on JDK 9,您可以使用以下命令启用它:

-XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCI -XX:+UseJVMCICompiler
Run Code Online (Sandbox Code Playgroud)

来源:克里斯发推文.


如果您明确愿意使用这些org.graalvm.*类,那么除了Linux发行版之外,它们不会出现在JDK-9版本中,而JEP-317#Experimental Java-Based JIT Compiler的状态也会读取类似内容.

Status    Integrated
Scope JDK
Release   10
Run Code Online (Sandbox Code Playgroud)

更新: - 要在JDK10上使用Graal,可以使用以下方法启用它: -

-XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCI -XX:+UseJVMCICompiler -Djvmci.Compiler=graal
Run Code Online (Sandbox Code Playgroud)

  • @ZhekaKozlov纠正自己,`jdk.aot`和`jdk.internal.vm.compiler`模块打包在Linux 64位版本中,用于JDK版本`9.0.1`而不是macOS.在答案中也更新了二进制文件的链接.http://www.oracle.com/technetwork/java/javase/downloads/jdk9-downloads-3848520.html.此外,他们也在JDK10的早期访问版本中. (2认同)