Now Reading: GraalVM 25 arrives, backed by JDK 25

Loading
svg

GraalVM 25 arrives, backed by JDK 25

NewsSeptember 24, 2025Artifice Prime
svg11

GraalVM 25, an update to Oracle’s tool for compiling Java applications into native binaries, has arrived alongside the newly released JDK 25. The update enhances the precision of points-to analysis in Native Image and allows source-phase imports from WebAssembly modules. Oracle also revealed plans to detach GraalVM from the Java ecosystem train.

Downloadable from graalvm.org, GraalVM 25 was announced on September 16. New and enhanced GraalVM 25 features from JDK 25 include module import declarations, compact object headers, and a preview of structured concurrency, according to the GraalVM 25 Community Edition release notes.

GraalVM 25 enables Whole-Program Sparse Conditional Constant Propagation (WP-SCCP) by default, improving the precision of points-to analysis in Native Image, Oracle said. This optimization enhances the accuracy and scalability of static analysis, potentially reducing the size of the final native binary. Also featured is an XGBoost-based static profiler for call-count profile inference in Native Image. The model classifies methods as either “regular/hot” or “cold,” guiding optimizations and reducing binary size with minimal impact on runtime performance. GraalVM 25 has an experimental option—H:+RelativeCodePointers—to reduce relocation entries in position-independent executables and shared libraries. For security, version 25 introduces Advanced Obfuscation in Native Image—an experimental Oracle GraalVM-only feature that re-names symbols in native images for enhanced protection against reverse engineering.

In GraalJS, a JavaScript language implementation built on GraalVM, GraalVM 25 enables source-phase imports from WebAssembly modules (import source mod from "./mod.wasm") by default if the js.webassembly option is enabled and the js.source-phase-imports option is not set to false. ECMAScript 25 also is enabled by default. With GraalWasm, an open source WebAssembly runtime, Context.eval now returns a compiled (but not yet instantiated) module object, rather than a module instance.

For GraalPy, which provides a Python 3 runtime for Java, the full-featured Python REPL is now available on GraalPy standalone builds for Windows. The Python standard library and core were updated to version 3.12.8. For the polyglot runtime, the option sandbox.MaxStackFrames no longer is mandatory for the UNTRUSTED polyglot sandbox policy, due to improved deoptimization handling in compiled code. Removing the option improves performance in sandboxed code, according to Oracle.

Oracle on September 15 announced Java SE (Standard Edition) roadmap updates for GraalVM, including the following:

  • The GraalVM team are transitioning to focus on non-Java Graal languages including GraalJS and GraalPy. Details are expected later.
  • GraalVM for JDK 24 was the final GraalVM release licensed and supported as part of Oracle Java SE products. Customers requiring further updates to legacy GraalVM versions should download them via Oracle Support.
  • GraalVM Early Adopter technology, including Native Image, is being discontinued for Java SE Product customers. The goals of improving the startup time, time to peak performance, and footprint of Java programs are being pursued further in OpenJDK’s Project Leyden as a standard part of Java.

Original Link:https://www.infoworld.com/article/4061937/graalvm-25-arrives-backed-by-jdk-25.html
Originally Posted: Wed, 24 Sep 2025 09:00:00 +0000

0 People voted this article. 0 Upvotes - 0 Downvotes.

Artifice Prime

Atifice Prime is an AI enthusiast with over 25 years of experience as a Linux Sys Admin. They have an interest in Artificial Intelligence, its use as a tool to further humankind, as well as its impact on society.

svg
svg

What do you think?

It is nice to know your opinion. Leave a comment.

Leave a reply

Loading
svg To Top
  • 1

    GraalVM 25 arrives, backed by JDK 25

Quick Navigation