JetBrains 开发的 Kotlin 编程语言,包含编译器、标准库及构建工具,支持多平台开发。
oracle/graal
GraalVM 是一个 Java 平台,可将应用提前编译为独立原生可执行文件,并可像普通 JDK 一样在 IDE 中使用。
- Star
- 21,735
- Fork
- 1,836
- 未关闭 Issue
- 895
- 最近提交
- 9小时前
这是什么?
GraalVM 将 Java 应用提前编译为独立的原生可执行文件,启动迅速,无需预热即可达到峰值性能,相比常规 JVM 运行占用的资源更少。它也可以像其他 JDK 一样在 IDE 中直接使用。
本仓库是项目的主源码树,包含多个组件:Graal 编译器、Native Image(SubstrateVM 提前编译框架)、基于 Truffle 运行 Java 字节码的 Espresso,以及 Truffle 语言实现框架。相关仓库提供 JavaScript(GraalJS)、Python(GraalPy)等语言实现,以及构建工具插件和用于配置 GraalVM 的 GitHub Action。
社区版按 GPL 2 加 Classpath 例外条款发布,其他组件分别采用 GPL 2、UPL 或 BSD 许可证。文档托管在 GraalVM 官网,源文件位于 docs 目录。
核心功能
- 01通过 Native Image 将 Java 应用编译为独立的原生可执行文件。
- 02启动快速,无需预热即可运行。
- 03可在 IDE 中作为 JDK 直接使用。
- 04包含 Graal 编译器和 Truffle 语言实现框架。
- 05提供 Espresso 用于运行 Java 字节码。
适用场景
- 构建需要快速启动和低内存占用的 Java 微服务或命令行工具。
- 部署对冷启动时间敏感的 Serverless 或容器化应用。
- 借助 Truffle 在 Java 应用中嵌入 JavaScript、Python 等语言。
快速上手
- 1
从 GraalVM 官网下载页面获取 GraalVM,或按照官网入门指南操作
使用前须知
- 各组件采用不同许可证:大多数使用带 Classpath 例外的 GPL 2,部分使用纯 GPL 2,其他组件使用 UPL 或 BSD。
- 从源码构建 GraalVM 需要按照 vm/README.md 中的单独说明进行。
标签
常见问题
- graal 是什么?
- GraalVM 是一个 Java 平台,可将应用提前编译为独立原生可执行文件,并可像普通 JDK 一样在 IDE 中使用。 GraalVM 将 Java 应用提前编译为独立的原生可执行文件,启动迅速,无需预热即可达到峰值性能,相比常规 JVM 运行占用的资源更少。它也可以像其他 JDK 一样在 IDE 中直接使用。
- graal 可以免费使用吗?用的什么许可证?
- graal 以 Other 许可证开源。用于商业产品前,请先确认许可证条款。
- graal 还在维护吗?
- 活跃维护中。graal 最近一次提交是在 2026年10月21日。
- graal 适合用来做什么?
- 构建需要快速启动和低内存占用的 Java 微服务或命令行工具。 部署对冷启动时间敏感的 Serverless 或容器化应用。 借助 Truffle 在 Java 应用中嵌入 JavaScript、Python 等语言。
- graal 怎么安装和运行?
- 从 GraalVM 官网下载页面获取 GraalVM,或按照官网入门指南操作
- 在哪里获取 graal?
- 源代码和安装说明在 GitHub 上:https://github.com/oracle/graal
概要由 AI 根据项目 README 生成;GitHub 数据每日更新。
相关项目
5.3万6450Kotlin无许可证更新于 4小时前
将 C# 与 .NET CIL 直接编译为小体积独立 WASI Wasm 组件的编译器、运行时与 SDK。
2337C#Other更新于 1小时前
基于 Cranelift 代码生成器的独立 WebAssembly 运行时,支持 WASI 并提供多语言嵌入接口。
1.9万1879RustApache-2.0更新于 6小时前
一份通俗风趣的中文 Java 学习指南,涵盖基础、并发、JVM、企业级开发和面试准备。
1.8万2481Java无许可证更新于 前天
一款命令行工具,用于从服务器提取 TLS/SSL 证书,并导出为 PEM、DER 或信任库格式。
93780JavaApache-2.0更新于 24天前