GraalVM 1.0-rc2发布发布,同时公开发布社区版和企业版二进制文件供下载。GraalVM正在快速发展。1.0-rc1几周前发布,现在rc2已经发布!GraalVM是一个通用虚拟机,可以支持多种语言,同时提供一致的性能,工具和配置。GraalVM旨在实现高性能和互操作性的任务,在构建多语种应用时无需额外的费用。
GraalVM 1.0-rc2亮点
适用于Java开发人员的GraalVM
根据发行说明,基础JDK版本已从“1.8.0_161”更新为“1.8.0_171”,并且对Java Microbenchmark线束的支持得到了改进,现在GraalVM已成为被认可且受支持的JVM。
修复了什么?StackOverflow异常在递归内联时提高了性能编译器错误导致构建scalac编译器时生成不正确的代码。
原生图像生成
GraalVM 1.0-rc2为构建静态链接的原生镜像提供了支持,这意味着你现在可以传递--static,并且如果安装了静态libc和zlib,它将生成一个独立的可执行文件,该文件不需要运行libc。
说到改进,团队还为SubstrateVM和Graal编译器组件的许可证添加了Classpath异常,以确保所有结束于原生镜像的GraalVM代码都受此条款的约束。
修复了什么?处理隐式异常(NullPointerExeption,ArrayIndexOutOfBoundsException,ClassCastException,...):所有异常现在都有正确的堆栈跟踪,可以按预期捕获。以前,隐式异常有时不会被同一方法中的异常处理程序捕获。早期采用者报告的生成原生镜像间的一些例外情况。
Java
除了它已经从Node.js 8.9.4更新到Node.js到8.11.1之外,没有什么可说的了。尽管这不是一个重大改变,但它带来了很多改进,包括CVE列出的安全修复程序。
用于C/C ++和其他本地语言的LLVM解释器
既然已经添加了一个新的API来访问Java类型并从LLVM语言实例化外部对象,那么你可以轻松地从编译为LLVM位代码的原生程序中调用Java代码。
GraalVM集成的API更改
好消息!Graal SDK和Truffle为试图在GraalVM之上构建,语言实现,嵌入GraalVM等的开发人员提供API。
开始使用GraalVM
由于Graal是一个动态编译器,可提高应用程序的效率和速度,因此GraalVM可为使用Java,Scala,Groovy或Kotlin等语言编写的基于JVM的应用程序提供更高的性能。Graal编译器也可作为JDK 10中的一个实验选项。但是,如果您想解锁最新功能并提升性能,则应该将其与GraalVM配合使用。
如果您是构建Node.js应用程序的Java开发人员,则应使用符合ECMA的Java引擎Graal Java [Graal.js]。它提供了Graal堆栈的所有优点,包括语言互操作性和通用工具。
留言与评论(共有 0 条评论) |