GraalJS

适用于 Java 的高性能可嵌入 JavaScript 运行时

优势

coffee beans icon

Java 的 JavaScript

直接在 Java 中使用 JavaScript 模块和脚本
compatibility icon

符合 ECMAScript 标准

performance icon

JVM 上最快的 JavaScript

Graal JIT 编译 JavaScript 以实现原生代码速度
upgrade up arrow icon

适用于 JVM 的现代 JavaScript

将 Nashorn 和 Rhino 应用程序升级到 ECMAScript 2024 的路径
code icon

用 JavaScript 编写 Java 脚本

通过与 Java 类和框架交互的 JavaScript 扩展应用程序
wasm integration icon

WebAssembly 集成

通过 JavaScript WebAssembly API 使用 WebAssembly 模块

如何开始

1. 从 Maven Central 添加 GraalJS 作为依赖项


  <dependency>
    <groupId>org.graalvm.polyglot</groupId>
    <artifactId>polyglot</artifactId>
    <version>24.2.1</version>
  </dependency>
  <dependency>
    <groupId>org.graalvm.polyglot</groupId>
    <artifactId>js</artifactId>
    <version>24.2.1</version>
    <type>pom</type>
  </dependency>
                


  implementation("org.graalvm.polyglot:polyglot:24.2.1")
  implementation("org.graalvm.polyglot:js:24.2.1")
                

2. 在 Java 中嵌入 JavaScript 代码


  import org.graalvm.polyglot.Context;

  try (Context context = Context.create()) {
      context.eval("js", "console.log('Hello from GraalJS!')");
  }
                

GraalJS 快速入门

通过此入门项目直接开始

用例

Micronaut 的 React SSR:使用 GraalJS 提升性能

Micronaut 的 React SSR 使用 GraalJS 高性能运行 Javascript

IntelliJ 中 HTTP 客户端的 GraalJS 驱动的执行引擎

IntelliJ IDEA 将 HTTP 客户端中使用的 JavaScript 执行引擎升级到 GraalJS

JVM 上的高性能服务器端渲染

用于 React.js 和其他客户端框架的高性能服务器端渲染

NetSuite 利用 GraalJS 作为其 SuiteScript 扩展语言

NetSuite 选择 GraalJS 作为其 JavaScript 运行时,因为它支持最新的 ECMAScript 标准并增强了性能
box

GraalJS 运行时环境带来了显著的优势,它让 SuiteScript 开发者能够即开即用地访问最新的 ECMAScript 功能和语法。将 SuiteScript 与 ECMAScript 对齐可提高开发者生产力,代码更易于维护,并确保持续符合不断发展的标准。

box
Ashwin Krishnamurthy
SuiteCloud 平台高级产品经理

联系我们