塞瑞亚免安装正式中文版
1.37G · 2025-10-16
GraalVM 的宏伟目标:成为一个通用的、高性能的、安全的多语言运行时平台。它不仅仅是简单地将多个语言虚拟机塞进 JVM,而是通过统一的基础设施(Truffle, Polyglot API)、统一的工具链和统一的安全模型,真正将这些语言融合在一起,使得开发者能够为任务选择最合适的语言,同时享受无缝互操作和卓越性能,最终解决复杂应用开发中的“语言壁垒”问题。
GraalVM 生态系统的 Maven 构件涉及了以下几个核心方面,共同构成了一个完整的高性能多语言平台解决方案:
这是最基础的部分,提供了直接在 JVM 上运行各种语言的能力。
polyglot
, js
, python
, ruby
, java
(Espresso), wasm
, llvm-native
, llvm-managed
提供了运行不可信代码或需要资源隔离的多租户应用的能力。
*-isolate
和平台特定的隔离构件(如 js-isolate
, wasm-isolate-linux-amd64
, python-isolate-darwin-aarch64
等)。提供了现代化的开发、调试、分析和测试工具链,极大提升多语言应用的开发效率。
tools
, dap
, lsp
, inspect
, coverage
, profiler
, heap
提供了在生产和开发环境中深入洞察应用程序运行时行为的能力。
insight
, heap
确保了整个生态系统的一致性和可靠性。
polyglot-tck
(来自两个 groupId)简化了用户采用该技术的过程。
graalpy-archetype-polyglot-app
, languages
反映了项目从社区版到正式版的演进过程。
-community
且已弃用的构件。org.graalvm.sdk
所属组名 | Java 包名 | 包描述 |
---|---|---|
org.graalvm.sdk | polyglot-tck | GraalVM 技术兼容性工具包 (TCK) 的服务提供者接口 (SPI) 。它为语言实现者提供了一套标准化的测试接口和规范,用于验证其语言实现是否与 GraalVM 多语言生态系统完全兼容。这解决了确保不同语言在 GraalVM 平台上具有一致的行为、性能和互操作性的问题,是 GraalVM 语言生态的质量保证基石。 |
org.graalvm
所属组名 | Java 包名 | 包描述 |
---|---|---|
org.graalvm | polyglot-tck | GraalVM 技术兼容性工具包 (TCK) 的服务提供者接口 (SPI) 。此构件是 GraalVM 核心发行版的一部分,功能与 org.graalvm.sdk:polyglot-tck 相同,为集成到 GraalVM 本身中的语言实现提供兼容性测试标准。 |
org.graalvm.polyglot
(核心与正式版构件)所属组名 | Java 包名 | 包描述 |
---|---|---|
org.graalvm.polyglot | polyglot | GraalVM 多语言应用程序的核心 API 和运行时。它提供了一个统一的框架,允许在单个 JVM 进程中无缝嵌入和互操作多种编程语言(如 JavaScript、Python、Ruby、R、WebAssembly)。它解决了传统 Java 应用中与其他语言交互时的复杂性和性能开销问题,通过高性能的 Truffle 框架实现语言间的零开销互操作。 |
org.graalvm.polyglot | wasm | GraalWasm:高性能的 WebAssembly (Wasm) 运行时。它允许在 JVM 中安全、高效地执行符合 WASI 标准的 WebAssembly 二进制模块。解决了将用 C/C++/Rust 等语言编写并编译为 Wasm 的代码嵌入到 Java 应用程序中的需求,适用于插件系统、沙箱环境和高性能计算场景。此依赖包含了运行所需的 Truffle 框架。 |
org.graalvm.polyglot | languages | 所有 GraalVM 语言实现的聚合依赖。通过引入此 POM 依赖,可以一次性获取所有官方支持的 GraalVM 语言(如 JS, Python, Ruby, R, Wasm)以及底层的 Truffle 框架。它简化了项目配置,解决了开发者需要手动添加多种语言依赖的麻烦,便于快速构建和试验多语言应用。 |
org.graalvm.polyglot | tools | 所有 Truffle 语言工具的聚合依赖。此 POM 提供了用于支持 GraalVM 语言开发的全套工具,包括调试器、分析器、覆盖率工具等。它解决了开发者需要为每种语言单独配置开发工具的复杂性,通过单一依赖即可获得完整的多语言开发调试能力。 |
org.graalvm.polyglot | js | GraalJS:高性能、符合 ECMAScript 标准的 JavaScript 运行时。它提供了一个可嵌入 Java 的现代 JavaScript 引擎,性能优异且与 Node.js 生态兼容。解决了在 JVM 上运行 JS 代码、在 Java 应用中集成脚本功能、以及构建基于 JS 的服务器端应用的需求。包含 Truffle 框架。 |
org.graalvm.polyglot | ruby | TruffleRuby:高性能的 Ruby 实现。它提供了与 CRuby 的高度兼容性,并能在 GraalVM 上实现极高的执行性能。解决了在 JVM 平台上运行 Ruby on Rails 等 Ruby 应用、以及让 Ruby 代码与 Java 和其他语言高效互操作的问题。 |
org.graalvm.polyglot | python | GraalPy:高性能的 Python 3 运行时。它支持在 JVM 上运行 Python 代码,兼容流行的 Python 科学计算库(如 NumPy, Pandas)。解决了在 Java 生态中集成 Python 机器学习/数据科学库、编写高性能 Python 应用、以及实现 Python 与 Java 代码无缝互操作的需求。 |
org.graalvm.polyglot | java | Espresso:在 Truffle 框架上实现的 Java 字节码解释器。它允许在 GraalVM 上运行 Java 应用程序,并与其他支持的语言进行语言级的深度互操作(而不仅仅是 JNI)。解决了在非标准 JVM(如 Native Image)中运行 Java、或将 Java 作为多语言应用中的一环进行集成的特殊需求。 |
org.graalvm.polyglot | llvm-managed | 托管模式的 LLVM 解释器。它允许在 GraalVM 的安全沙箱中执行已编译的 LLVM 位码(来自 C、C++、Rust 等),内存由 Java 虚拟机完全管理。解决了安全地执行本地代码而不依赖不安全的 JNI、以及实现跨语言互操作的需求。 |
org.graalvm.polyglot | llvm-native | 原生模式的 LLVM 解释器。它通过预构建的原生库和 JNI 来执行 LLVM 位码,以获得比托管模式更高的性能。解决了需要以接近原生的速度运行现有 C/C++ 库,同时又能与 Java 和其他 GraalVM 语言交互的需求。 |
org.graalvm.polyglot | dap | 基于调试适配器协议 (DAP) 的多语言调试器后端。它实现了 DAP 标准,使得像 VS Code、IntelliJ IDEA 这样的 IDE 能够以统一的方式调试所有 GraalVM 支持的语言。解决了为不同语言配置和维护不同调试器的复杂性,提供了现代化的调试体验。 |
org.graalvm.polyglot | lsp | 基于语言服务器协议 (LSP) 的多语言后端。它实现了 LSP 标准,为所有 GraalVM 语言提供代码补全、定义跳转、悬停提示、重构等智能编辑功能。解决了为多种语言提供一致的 IDE 支持难题,极大地增强了开发效率。 |
org.graalvm.polyglot | inspect | 基于 Chrome DevTools 协议的多语言调试器后端。它允许开发者使用熟悉的 Chrome 浏览器开发者工具来调试 GraalVM 应用程序。解决了开发者希望使用图形化界面进行调试的需求,特别适用于调试复杂的 JavaScript 和 Node.js 应用。 |
org.graalvm.polyglot | coverage | Truffle 代码覆盖率工具。用于收集和统计多语言代码在测试中的执行覆盖率数据。它解决了评估测试用例的完备性、识别未测试代码块的问题,是保证软件质量的重要工具。 |
org.graalvm.polyglot | profiler | Truffle 性能分析器。提供 CPU 采样和精确跟踪功能,用于分析应用程序的性能瓶颈。实验性功能包括内存跟踪。它解决了优化多语言应用程序性能、定位热点方法和内存分配问题的需求。 |
org.graalvm.polyglot | insight | 运行时洞察与监控框架。允许动态地跟踪应用程序的执行流、函数调用、参数和返回值,而无需修改源代码。它解决了在生产或开发环境中对应用行为进行动态观察、故障诊断和性能分析的问题。 |
org.graalvm.polyglot | heap | 堆转储生成与分析工具。用于生成 GraalVM 语言运行时(如 JavaScript、Python)的堆内存快照,并进行分析以发现内存泄漏或优化内存使用。它解决了诊断内存相关问题的难题。 |
org.graalvm.polyglot
(隔离环境构件 - Isolates)所属组名 | Java 包名 | 包描述 |
---|---|---|
org.graalvm.polyglot | wasm-isolate | WebAssembly 隔离环境的通用抽象层。为 Wasm 模块提供资源隔离、内存限制和独立上下文的沙箱环境。解决了运行不可信代码、确保应用主体稳定性、以及实现多租户架构的安全需求。 |
org.graalvm.polyglot | js-isolate | JavaScript 隔离环境的通用抽象层。为 JS 代码提供独立的执行上下文和资源控制。解决了在同一 JVM 中运行多个互不干扰的 JS 脚本、安全执行第三方代码以及服务器端隔离(如云函数)的需求。 |
org.graalvm.polyglot | python-isolate | Python 隔离环境的通用抽象层。为 Python 解释器提供独立的运行环境。解决了在同一个应用中运行多个不同版本的 Python 脚本、或隔离不同任务的 Python 执行以避免全局状态冲突的问题。 |
(以下为平台特定的原生隔离环境实现,提供更高性能) | ||
org.graalvm.polyglot | wasm-isolate-linux-amd64 | 为 Linux x86-64 平台预构建的高性能 WebAssembly 隔离环境原生支持库。 |
org.graalvm.polyglot | wasm-isolate-linux-aarch64 | 为 Linux ARM64 平台预构建的高性能 WebAssembly 隔离环境原生支持库。 |
org.graalvm.polyglot | wasm-isolate-windows-amd64 | 为 Windows x86-64 平台预构建的高性能 WebAssembly 隔离环境原生支持库。 |
org.graalvm.polyglot | wasm-isolate-darwin-amd64 | 为 macOS x86-64 平台预构建的高性能 WebAssembly 隔离环境原生支持库。 |
org.graalvm.polyglot | wasm-isolate-darwin-aarch64 | 为 macOS ARM64 (Apple Silicon) 平台预构建的高性能 WebAssembly 隔离环境原生支持库。 |
org.graalvm.polyglot | js-isolate-linux-amd64 | 为 Linux x86-64 平台预构建的高性能 JavaScript 隔离环境原生支持库。 |
org.graalvm.polyglot | js-isolate-linux-aarch64 | 为 Linux ARM64 平台预构建的高性能 JavaScript 隔离环境原生支持库。 |
org.graalvm.polyglot | js-isolate-windows-amd64 | 为 Windows x86-64 平台预构建的高性能 JavaScript 隔离环境原生支持库。 |
org.graalvm.polyglot | js-isolate-darwin-amd64 | 为 macOS x86-64 平台预构建的高性能 JavaScript 隔离环境原生支持库。 |
org.graalvm.polyglot | js-isolate-darwin-aarch64 | 为 macOS ARM64 (Apple Silicon) 平台预构建的高性能 JavaScript 隔离环境原生支持库。 |
org.graalvm.polyglot | python-isolate-linux-amd64 | 为 Linux x86-64 平台预构建的高性能 Python 隔离环境原生支持库。 |
org.graalvm.polyglot | python-isolate-linux-aarch64 | 为 Linux ARM64 平台预构建的高性能 Python 隔离环境原生支持库。 |
org.graalvm.polyglot | python-isolate-windows-amd64 | 为 Windows x86-64 平台预构建的高性能 Python 隔离环境原生支持库。 |
org.graalvm.polyglot | python-isolate-darwin-amd64 | 为 macOS x86-64 平台预构建的高性能 Python 隔离环境原生支持库。 |
org.graalvm.polyglot | python-isolate-darwin-aarch64 | 为 macOS ARM64 (Apple Silicon) 平台预构建的高性能 Python 隔离环境原生支持库。 |
org.graalvm.polyglot
(已弃用的社区版构件 - Deprecated Community Editions)所属组名 | Java 包名 | 包描述 |
---|---|---|
org.graalvm.polyglot | wasm-community | (已弃用) GraalWasm 的社区版。请改用正式版 wasm 。社区版通常功能与正式版相同,但可能有不同的许可协议或发布周期。 |
org.graalvm.polyglot | js-community | (已弃用) GraalJS 的社区版。请改用正式版 js 。 |
org.graalvm.polyglot | python-community | (已弃用) GraalPy 的社区版。请改用正式版 python 。 |
org.graalvm.polyglot | ruby-community | (已弃用) TruffleRuby 的社区版。请改用正式版 ruby 。 |
org.graalvm.polyglot | java-community | (已弃用) Espresso 的社区版。请改用正式版 java 。 |
org.graalvm.polyglot | llvm-native-community | (已弃用) 原生 LLVM 引擎的社区版。请改用正式版 llvm-native 。 |
org.graalvm.polyglot | llvm-community | (已弃用) LLVM 引擎的旧社区版。请根据需求改用 llvm-native 或 llvm-managed 。 |
org.graalvm.polyglot | tools-community | (已弃用) 工具集的社区版。请改用正式版 tools 。 |
org.graalvm.polyglot | languages-community | (已弃用) 语言集的社区版。请改用正式版 languages 。 |
org.graalvm.polyglot | dap-community | (已弃用) 调试适配器的社区版。请改用正式版 dap 。 |
org.graalvm.polyglot | lsp-community | (已弃用) 语言服务器的社区版。请改用正式版 lsp 。 |
org.graalvm.polyglot | insight-community | (已弃用) 洞察工具的社区版。请改用正式版 insight 。 |
org.graalvm.polyglot | coverage-community | (已弃用) 覆盖率工具的社区版。请改用正式版 coverage 。 |
org.graalvm.polyglot | profiler-community | (已弃用) 分析器的社区版。请改用正式版 profiler 。 |
org.graalvm.polyglot | heap-community | (已弃用) 堆转储工具的社区版。请改用正式版 heap 。 |
org.graalvm.python
所属组名 | Java 包名 | 包描述 |
---|---|---|
org.graalvm.python | graalpy-archetype-polyglot-app | Maven 项目原型 (Archetype) 。用于快速生成一个集成了 GraalPy (Python) 和 Java 的多语言应用程序项目骨架。它解决了开发者手动配置 Maven 项目以支持 GraalPy 多语言开发的繁琐过程,通过一条命令即可创建结构规范、配置完备的起步项目。 |
org.graalvm.espresso
所属组名 | Java 包名 | 包描述 |
---|---|---|
org.graalvm.espresso | polyglot | Espresso (Java on Truffle) 的多语言 API。此构件提供了从 Espresso 内部访问其他 GraalVM 语言的 API。它解决了在 Espresso 实现的 Java 虚拟机中直接互操作 JavaScript、Python 等其他语言的问题,实现了 Java 代码与其他语言的深度双向调用。 |
1.37G · 2025-10-16
9.29G · 2025-10-16
9.55G · 2025-10-16
799~1199 元雷蛇清姬 V2 / X 直播摄像头发布:4K 画质 + AI 智能自动取景
卫星互联网低轨 12 组卫星发射成功,我国长征系列火箭达成 600 次里程碑、速度创纪录