GraalVM !拥抱云原生的 JVM

发布于:2025-08-12 ⋅ 阅读:(20) ⋅ 点赞:(0)

这是2024年初的 GraalVM 系列博文,当时写了大纲,知道一年半后的现在才得以完成发布😄

概述

我计划针对GraalVM写一个系列的文章,初步大纲:

  1. GraalVM!拥抱云原生的 JVM
  2. 在JVM跑JavaScript脚本 | FaaS架构简单实现

GraalVM 简介

2024年官网截图
GraalVM 是一款基于 Java 虚拟机 (JVM) 的新型全栈虚拟机,由 Oracle 公司开发和维护。GraalVM 除了支持 Java 语言之外,还支持多种编程语言,如 JavaScript、Python、Ruby、R 等。主要特点是:

  • 高性能:GraalVM 基于 JIT (Just-in-time) 编译技术,在运行时动态生成本地代码,可以显著提高程序的性能。
  • 多语言支持:GraalVM 支持多种编程语言,并可以在不同的语言之间进行互操作。
  • 低内存占用:GraalVM 使用了一种名为 GraalVM Native Image 的技术,可以将应用程序编译成本地可执行文件,从而减少内存占用和启动时间。
  • 可扩展性:GraalVM 提供了多种插件和扩展点,可以方便地扩展虚拟机的功能和性能。
  • GraalVM 还提供了多种工具和库,如 GraalVM Compiler、GraalVM Truffle、GraalVM Polyglot 等,可以帮助开发人员更好地使用和优化 GraalVM。

时隔一年半,GraalVM 官网界面也发生了变化(见下图),github 收藏数增加了近 1000(涨幅不算大😂)。

2025年8月官网截图

近两年 GraalVM 主要版本发布一览

时间 类型 发布版本
2023-09-19 Feature GraalVM for JDK 21(LTS)
2023-10-24 CPU JDK 23.0.1
2024-01-16 CPU JDK 17.0.10 / 21.0.2
2024-03-19 Feature GraalVM for JDK 22
2024-04-16 CPU JDK 22.0.1 / 21.0.3 / 17.0.11
2024-07-16 CPU JDK 22.0.2 / 21.0.4 / 17.0.12
2024-09-17 Feature GraalVM for JDK 23
2024-10-15 CPU JDK 23.0.1 / 21.0.5 / 17.0.13
2025-01-21 CPU JDK 23.0.2 / 21.0.6 / 17.0.14
2025-03-18 Feature GraalVM for JDK 24
2025-04-15 CPU JDK 24.0.1 / 21.0.7 / 17.0.15
2025-07-15 CPU JDK 24.0.2 / 21.0.8 / 17.0.16

安装GraalVM

GraalVM 的安装方式比较简单,可以分成 直接下载压缩包通过包管理器安装 两大类。


1. 直接下载(官方推荐方式)

  1. 访问 GraalVM 官网:

  2. 选择你的 操作系统(Windows / macOS / Linux)和 JDK 版本(17、21、最新等)。

  3. 下载对应的 压缩包.zip.tar.gz)。

  4. 解压到一个固定目录(例如 C:\graalvm/opt/graalvm)。

  5. 配置环境变量(仅供参考):

    # Linux / macOS
    export GRAALVM_HOME=/opt/graalvm/graalvm-ce-java21-24.0.2
    export PATH=$GRAALVM_HOME/bin:$PATH
    
    # Windows PowerShell
    setx GRAALVM_HOME "C:\graalvm\graalvm-ce-java21-24.0.2"
    setx PATH "%GRAALVM_HOME%\bin;%PATH%"
    

2. 通过包管理器安装

macOS(Homebrew)

brew install --cask graalvm/tap/graalvm-ce-java21

Linux(SDKMAN!)

curl -s "https://get.sdkman.io" | bash
sdk install java 21.0.2-graal

Windows(Scoop)

scoop bucket add java
scoop install graalvm-ce-java21

3. 可选组件安装

GraalVM 自带 JVM,可以安装额外的语言和工具,例如 native-image

gu install native-image

验证安装

java -version

看到输出带有 GraalVM 就表示安装成功。

参考资料