Skip to content

Commit 8e43ffb

Browse files
committed
[GR-67399] Add version updates to docs for GraalVM for JDK 25.
PullRequest: graal/21911
2 parents 860c909 + eb7e42f commit 8e43ffb

25 files changed

+156
-157
lines changed

docs/getting-started/container-images/graalvm-ce-container-images.md

Lines changed: 17 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -16,8 +16,8 @@ There are different GraalVM Community Edition container images provided dependin
1616
These are: **native-image-community**, **jdk-community**, **truffleruby-community**, **nodejs-community**, and **graalpy-community**.
1717
The container images are multi-arch, for x64 and AArch64 processor architectures, with a choice of Oracle Linux versions 8, 9, and 10.
1818

19-
GraalVM is installed in _/usr/lib64/graalvm/graalvm-community-java&lt;$FeatureVersion&gt;/_ where `<$FeatureVersion>` is `17`, `21`, `24`, and so on.
20-
For instance, GraalVM for JDK 24 is installed in _/usr/lib64/graalvm/graalvm-community-java24/_.
19+
GraalVM is installed in _/usr/lib64/graalvm/graalvm-community-java&lt;$FeatureVersion&gt;/_ where `<$FeatureVersion>` is `17`, `21`, `25`, and so on.
20+
For instance, GraalVM for JDK 25 is installed in _/usr/lib64/graalvm/graalvm-community-java25/_.
2121
All binaries, including `java`, `javac`, `native-image`, and other binaries are available as global commands via the `alternatives` command.
2222

2323
> Note: For GraalVM non-RPM based images (**graalvm-community**, **python-community**, **truffleruby-community**), the installation location is under _/opt/_ (_/opt/graalvm-community-java&lt;$FeatureVersion&gt;/_, _/opt/truffleruby-&lt;$GRAALVM_VERSION&gt;/_, and _/opt/graalpy-&lt;$GRAALVM_VERSION&gt;/_ respectively).
@@ -37,45 +37,44 @@ $version[-muslib(for native image only)][-$platform][-$buildnumber]
3737
The following tags are listed from the most-specific tag (at the top) to the least-specific tag (at the bottom).
3838
The most-specific tag is unique and always points to the same image, while the less-specific tags point to newer image variants over time.
3939
For example:
40-
```
41-
24.0.1-ol9-20250318
42-
24.0.1-ol9
43-
24.0.1
44-
24-ol9
45-
24
40+
```bash
41+
25.0.0-ol9
42+
25.0.0
43+
25-ol9
44+
25
4645
```
4746

4847
## Pulling Images
4948

50-
1. To pull the container image for GraalVM JDK for a specific JDK feature version, such as _24_, run:
49+
1. To pull the container image for GraalVM JDK for a specific JDK feature version, such as _25_, run:
5150
```bash
52-
docker pull ghcr.io/graalvm/jdk-community:24
51+
docker pull ghcr.io/graalvm/jdk-community:25
5352
```
5453

5554
Alternatively, to use the container image as the base image in your Dockerfile, use:
5655
```bash
57-
FROM ghcr.io/graalvm/jdk-community:24
56+
FROM ghcr.io/graalvm/jdk-community:25
5857
```
5958
You have pulled a size compact GraalVM Community Edition container image with the GraalVM JDK and the Graal compiler preinstalled.
6059

61-
2. To pull the container image with the `native-image` utility for a specific JDK feature version, such as _24_, run:
60+
2. To pull the container image with the `native-image` utility for a specific JDK feature version, such as _25_, run:
6261
```bash
63-
docker pull ghcr.io/graalvm/native-image-community:24
62+
docker pull ghcr.io/graalvm/native-image-community:25
6463
```
6564

6665
Alternatively, to pull the container image with the `native-image` utility with the `musl libc` toolchain to create fully statically linked executables, use:
6766
```bash
68-
docker pull ghcr.io/graalvm/native-image-community:24-muslib
67+
docker pull ghcr.io/graalvm/native-image-community:25-muslib
6968
```
7069

7170
Alternatively, to use the container image as the base image in your Dockerfile, use:
7271
```bash
73-
FROM ghcr.io/graalvm/native-image-community:24-muslib
72+
FROM ghcr.io/graalvm/native-image-community:25-muslib
7473
```
7574

7675
3. To verify, start the container and enter a Bash session:
7776
```bash
78-
docker run -it --rm --entrypoint /bin/bash ghcr.io/graalvm/native-image-community:24
77+
docker run -it --rm --entrypoint /bin/bash ghcr.io/graalvm/native-image-community:25
7978
```
8079

8180
To check the version of GraalVM and its installed location, run the `env` command from the Bash prompt:
@@ -96,13 +95,13 @@ For example:
9695

9796
4. Calling `docker pull` without specifying a processor architecture pulls container images for the processor architecture that matches your Docker client. To pull a container image for a different platform architecture, specify the desired platform architecture with the `--platform` option and either `linux/amd64` or `linux/aarch64` as follows:
9897
```bash
99-
docker pull --platform linux/aarch64 ghcr.io/graalvm/native-image-community:24
98+
docker pull --platform linux/aarch64 ghcr.io/graalvm/native-image-community:25
10099
```
101100

102101
## Oracle GraalVM Container Images
103102

104103
Oracle GraalVM container images are published in the [Oracle Container Registry (OCR)](https://container-registry.oracle.com/ords/ocr/ba/graalvm) and include [GFTC-licensed](https://www.oracle.com/downloads/licenses/graal-free-license.html) Oracle GraalVM.
105-
Learn more in the [Oracle GraalVM Container Images documentation](https://docs.oracle.com/en/graalvm/jdk/24/docs/getting-started/container-images/).
104+
Learn more in the [Oracle GraalVM Container Images documentation](https://docs.oracle.com/en/graalvm/jdk/25/docs/getting-started/container-images/).
106105

107106
### Related Documentation
108107

docs/getting-started/container-images/oracle-graalvm-container-images.md

Lines changed: 15 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -20,9 +20,9 @@ Oracle GraalVM container images are published in two OCR repositories: **jdk** a
2020

2121
Both repositories provide container images for x64 and AArch64 processor architectures, with a choice of Oracle Linux versions 8, 9, and 10.
2222

23-
Oracle GraalVM is installed in _/usr/lib64/graalvm/graalvm-java&lt;$FeatureVersion&gt;/_ where `<$FeatureVersion>` is `17`, `21`, `24`, and so on.
23+
Oracle GraalVM is installed in _/usr/lib64/graalvm/graalvm-java&lt;$FeatureVersion&gt;/_ where `<$FeatureVersion>` is `17`, `21`, `25`, and so on.
2424

25-
For example, Oracle GraalVM for JDK 24 is installed in _/usr/lib64/graalvm/graalvm-java24/_.
25+
For example, Oracle GraalVM for JDK 25 is installed in _/usr/lib64/graalvm/graalvm-java25/_.
2626
All binaries, including `java`, `javac`, `native-image`, and other binaries are available as global commands via the `alternatives` command.
2727

2828
## Tags
@@ -36,43 +36,42 @@ $version[-muslib(for native image only)][-$platform][-$buildnumber]
3636
The following tags are listed from the most-specific tag (at the top) to the least-specific tag (at the bottom).
3737
The most-specific tag is unique and always points to the same container image, while the less-specific tags point to newer container image variants over time.
3838
```
39-
24.0.1-ol9-20250318
40-
24.0.1-ol9
41-
24.0.1
42-
24-ol9
43-
24
39+
25.0.0-ol9
40+
25.0.0
41+
25-ol9
42+
25
4443
```
4544

4645
## Pulling Images
4746

48-
1. To pull the container image for Oracle GraalVM JDK for a specific JDK feature version, such as _24_, run:
47+
1. To pull the container image for Oracle GraalVM JDK for a specific JDK feature version, such as _25_, run:
4948
```bash
50-
docker pull container-registry.oracle.com/graalvm/jdk:24
49+
docker pull container-registry.oracle.com/graalvm/jdk:25
5150
```
5251

5352
Alternatively, to use the container image as the base image in your Dockerfile, use:
5453
```bash
55-
FROM container-registry.oracle.com/graalvm/jdk:24
54+
FROM container-registry.oracle.com/graalvm/jdk:25
5655
```
5756

58-
2. To pull the container image for Oracle GraalVM `native-image` utility for a specific JDK feature version, such as _24_, run:
57+
2. To pull the container image for Oracle GraalVM `native-image` utility for a specific JDK feature version, such as _25_, run:
5958
```bash
60-
docker pull container-registry.oracle.com/graalvm/native-image:24
59+
docker pull container-registry.oracle.com/graalvm/native-image:25
6160
```
6261

6362
Alternatively, to pull the container image for Oracle GraalVM `native-image` utility with the `musl libc` toolchain to create fully statically linked executables, run:
6463
```bash
65-
docker pull container-registry.oracle.com/graalvm/native-image:24-muslib
64+
docker pull container-registry.oracle.com/graalvm/native-image:25-muslib
6665
```
6766

6867
Alternatively, to use the container image as the base image in your Dockerfile, use:
6968
```bash
70-
FROM container-registry.oracle.com/graalvm/native-image:24-muslib
69+
FROM container-registry.oracle.com/graalvm/native-image:25-muslib
7170
```
7271

7372
3. To verify, start the container and enter a Bash session:
7473
```bash
75-
docker run -it --rm --entrypoint /bin/bash container-registry.oracle.com/graalvm/native-image:24
74+
docker run -it --rm --entrypoint /bin/bash container-registry.oracle.com/graalvm/native-image:25
7675
```
7776

7877
To check the version of Oracle GraalVM and its installed location, run the `env` command from the `bash` prompt:
@@ -95,7 +94,7 @@ The most-specific tag is unique and always points to the same container image, w
9594

9695
4. A `docker pull` command that omits a processor architecture pulls a container image for the processor architecture that matches your Docker client. To pull a container image for a different platform architecture, specify the desired platform architecture with the `--platform` option and either `linux/amd64` or `linux/aarch64` as follows:
9796
```bash
98-
docker pull --platform linux/aarch64 container-registry.oracle.com/graalvm/native-image:24
97+
docker pull --platform linux/aarch64 container-registry.oracle.com/graalvm/native-image:25
9998
```
10099

101100
### Related Documentation

docs/getting-started/oci/installation-compute-instance-with-OL.md

Lines changed: 9 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,7 @@ To replicate the steps in this guide, [create a Compute instance and connect to
1616

1717
## Install Oracle GraalVM
1818

19-
For convenience, the RPM package for Oracle GraalVM for JDK 24 is available in the Oracle YUM repository with the package name `graalvm-24-native-image`.
19+
For convenience, the RPM package for Oracle GraalVM for JDK 25 is available in the Oracle YUM repository with the package name `graalvm-25-native-image`.
2020
This distribution includes a JDK and Native Image.
2121
It is self-contained and all the required dependencies will be automatically resolved during the installation.
2222

@@ -42,7 +42,7 @@ sudo yum update -y oraclelinux-release-el10
4242
sudo yum config-manager --set-enabled el10_codeready_builder
4343
```
4444
```bash
45-
sudo yum install graalvm-24-native-image
45+
sudo yum install graalvm-25-native-image
4646
```
4747
Confirm that the installed package size is correct by entering `yes` at the prompt.
4848

@@ -54,7 +54,7 @@ sudo dnf update -y oraclelinux-release-el10
5454
sudo dnf config-manager --set-enabled el10_codeready_builder
5555
```
5656
```bash
57-
sudo dnf install graalvm-24-native-image
57+
sudo dnf install graalvm-25-native-image
5858
```
5959

6060
### Oracle Linux 9
@@ -67,7 +67,7 @@ sudo yum update -y oraclelinux-release-el9
6767
sudo yum config-manager --set-enabled ol9_codeready_builder
6868
```
6969
```bash
70-
sudo yum install graalvm-24-native-image
70+
sudo yum install graalvm-25-native-image
7171
```
7272
Confirm that the installed package size is correct by entering `yes` at the prompt.
7373

@@ -79,7 +79,7 @@ sudo dnf update -y oraclelinux-release-el9
7979
sudo dnf config-manager --set-enabled ol9_codeready_builder
8080
```
8181
```bash
82-
sudo dnf install graalvm-24-native-image
82+
sudo dnf install graalvm-25-native-image
8383
```
8484

8585
### Oracle Linux 8
@@ -92,7 +92,7 @@ sudo yum update -y oraclelinux-release-el8
9292
sudo yum config-manager --set-enabled ol8_codeready_builder
9393
```
9494
```bash
95-
sudo yum install graalvm-24-native-image
95+
sudo yum install graalvm-25-native-image
9696
```
9797
Confirm that the installed package size is correct by entering `yes` at the prompt.
9898

@@ -104,7 +104,7 @@ sudo dnf update -y oraclelinux-release-el8
104104
sudo dnf config-manager --set-enabled ol8_codeready_builder
105105
```
106106
```bash
107-
sudo dnf install graalvm-24-native-image
107+
sudo dnf install graalvm-25-native-image
108108
```
109109

110110
### Oracle Linux 7
@@ -126,7 +126,7 @@ sudo dnf install graalvm-24-native-image
126126
```
127127
4. Install the latest Oracle GraalVM:
128128
```
129-
sudo yum install graalvm-24-native-image
129+
sudo yum install graalvm-25-native-image
130130
```
131131
Confirm that the installed package size is correct by entering `yes` at the prompt.
132132

@@ -138,7 +138,7 @@ After installation, the package files are placed in the _/usr/lib64/graalvm_ dir
138138

139139
1. Set the values of the `PATH` and `JAVA_HOME` environment variables in the bash configuration to point to the location of the Oracle GraalVM installation with the following commands:
140140
```bash
141-
echo "export JAVA_HOME=/usr/lib64/graalvm/graalvm-java24" >> ~/.bashrc
141+
echo "export JAVA_HOME=/usr/lib64/graalvm/graalvm-java25" >> ~/.bashrc
142142
```
143143
```bash
144144
echo 'export PATH=$JAVA_HOME/bin:$PATH' >> ~/.bashrc

docs/getting-started/oci/installation-devops-build-pipeline.md

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -26,27 +26,27 @@ To work with a Build Pipeline, add statements to a [build specification file](ht
2626
The DevOps CI/CD platform reads the file and runs the commands one by one.
2727
You do not need to run a YUM package manager command manually.
2828

29-
RPMs for Oracle GraalVM are available with the package names `graalvm-17-native-image`, `graalvm-21-native-image`, and `graalvm-24-native-image`.
29+
RPMs for Oracle GraalVM are available with the package names `graalvm-17-native-image`, `graalvm-21-native-image`, and `graalvm-25-native-image`.
3030
Each package includes the JDK and the Native Image tool.
3131

3232
To install and use Oracle GraalVM in your DevOps Build Pipeline, update your build specification file as shown in the following example.
3333

34-
1. Add a command to install Oracle GraalVM for JDK 24 with Native Image and Java Development Kit (JDK):
34+
1. Add a command to install Oracle GraalVM for JDK 25 with Native Image and Java Development Kit (JDK):
3535

3636
```yml
3737
steps:
3838
- type: Command
39-
name: "Install Oracle GraalVM for JDK 24"
39+
name: "Install Oracle GraalVM for JDK 25"
4040
command: |
41-
yum -y install graalvm-24-native-image
41+
yum -y install graalvm-25-native-image
4242
```
4343

44-
2. Add a command to set the value of the `JAVA_HOME` environment variable for Oracle GraalVM for JDK 24:
44+
2. Add a command to set the value of the `JAVA_HOME` environment variable for Oracle GraalVM for JDK 25:
4545

4646
```yml
4747
env:
4848
variables:
49-
"JAVA_HOME" : "/usr/lib64/graalvm/graalvm-java24"
49+
"JAVA_HOME" : "/usr/lib64/graalvm/graalvm-java25"
5050
```
5151

5252
3. Add the command to set the value of the `PATH` environment variable:
@@ -68,9 +68,9 @@ Here is an example of a complete [build specification file](https://github.com/o
6868

6969
Oracle GraalVM provides more features, each of which can be installed as an add-on.
7070
Use the `yum list` command to get a list of the available RPMs for your installation.
71-
For instance, for Oracle GraalVM for JDK 24, run:
71+
For instance, for Oracle GraalVM for JDK 25, run:
7272
```bash
73-
yum list graalvm-24*
73+
yum list graalvm-25*
7474
...
7575
```
7676

docs/oracle-graalvm/support.md

Lines changed: 5 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -7,14 +7,14 @@ permalink: /support/
77

88
## Available Distributions
99

10-
Oracle GraalVM for JDK 24 is based on Oracle JDK 24.
11-
Each release of Oracle GraalVM for JDK 24 includes all Oracle Java critical patch updates (CPUs), which are provided on a regular schedule to remedy defects and known vulnerabilities.
10+
Oracle GraalVM for JDK 25 is based on Oracle JDK 25.
11+
Each release of Oracle GraalVM for JDK 25 includes all Oracle Java critical patch updates (CPUs), which are provided on a regular schedule to remedy defects and known vulnerabilities.
1212

13-
Oracle GraalVM for JDK 24 is available for Linux, macOS, and Windows on the x64 architecture, and for Linux and macOS on the AArch64 architecture.
13+
Oracle GraalVM for JDK 25 is available for Linux, macOS, and Windows on the x64 architecture, and for Linux and macOS on the AArch64 architecture.
1414

1515
## Certified Platforms
1616

17-
Oracle GraalVM for JDK 24 is certified on the following platforms.
17+
Oracle GraalVM for JDK 25 is certified on the following platforms.
1818

1919
**Linux**
2020

@@ -26,7 +26,6 @@ Oracle GraalVM for JDK 24 is certified on the following platforms.
2626
| Oracle Linux 7 | x64 |
2727
| Red Hat Enterprise Linux 10 | AArch64, x64 |
2828
| Red Hat Enterprise Linux 9 | AArch64, x64 |
29-
| Red Hat Enterprise Linux 9 | AArch64, x64 |
3029
| Red Hat Enterprise Linux 8 | AArch64, x64 |
3130
| Red Hat Enterprise Linux 7 | x64 |
3231
| Ubuntu Linux 24.10 | x64 |
@@ -55,7 +54,7 @@ See [Oracle GraalVM Support Roadmap](https://docs.oracle.com/en/graalvm/support-
5554

5655
## Related Technologies
5756

58-
Additional open source language runtimes designed for use with Oracle GraalVM for JDK 24 are available on [graalvm.org](https://www.graalvm.org/reference-manual/languages/).
57+
Additional open source language runtimes designed for use with Oracle GraalVM for JDK 25 are available on [graalvm.org](https://www.graalvm.org/reference-manual/languages/).
5958

6059
## Licensing and Support
6160

docs/reference-manual/embedding/embed-languages.md

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -503,7 +503,7 @@ Here is a Maven profile configuration example:
503503
<plugin>
504504
<groupId>org.graalvm.buildtools</groupId>
505505
<artifactId>native-maven-plugin</artifactId>
506-
<version>0.10.1</version>
506+
<version>${native.maven.plugin.version}</version>
507507
<extensions>true</extensions>
508508
<executions>
509509
<execution>
@@ -1059,7 +1059,7 @@ with the corresponding `assembly.xml`:
10591059
<handlerName>metaInf-services</handlerName>
10601060
</containerDescriptorHandler>
10611061
</containerDescriptorHandlers>
1062-
</assembly
1062+
</assembly>
10631063
```
10641064
10651065
## Compatibility with JSR-223 ScriptEngine
@@ -1085,6 +1085,7 @@ There are only two lines to adapt to your project:
10851085
```java
10861086
public final class CHANGE_NAME_EngineFactory implements ScriptEngineFactory {
10871087
private static final String LANGUAGE_ID = "<<INSERT LANGUAGE ID HERE>>";
1088+
}
10881089
```
10891090
10901091
Rename the class as desired and change the `LANGUAGE_ID` to the desired Truffle language (for example, "python" for GraalPy or "js" for GraalJS).

docs/reference-manual/java-on-truffle/ImplementationDetails.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -32,10 +32,10 @@ This mode is not used when running in a native executable since there will be no
3232

3333
## Current Limitations
3434

35-
* Espresso does not implement the [JVM Tool Interface (JVMTI)](https://docs.oracle.com/en/java/javase/22/docs/specs/jvmti.html). As a result, it does not support the `-agentlib`, or `-agentpath` VM options.
35+
* Espresso does not implement the [JVM Tool Interface (JVMTI)](https://docs.oracle.com/en/java/javase/25/docs/specs/jvmti.html). As a result, it does not support the `-agentlib`, or `-agentpath` VM options.
3636
* Espresso does not implement the `java.lang.instrument` interface. As a result it does not support the `-javaagent` VM option.
3737
* Espresso currently uses the standard native libraries from the Java core library. This requires allowing a polyglot `Context` native access. Because of the way these libraries are loaded (via [Truffle NFI](../../../truffle/docs/NFI.md)), running on HotSpot only works on Linux (with `glibc`). Running as part of a native executable works on Linux, Windows, and macOS but it currently limited to one context.
3838
* Support for [Java Management Extensions (JMX)](https://docs.oracle.com/javase/tutorial/jmx/index.html) is partial and some methods might return partial data.
3939
* The [Debugger Protocol Implementation (JDWP)](https://docs.oracle.com/javase/8/docs/technotes/guides/jpda/jdwp-spec.html) lacks some capabilities compared to HotSpot. It will correctly report the supported [capabilities](https://docs.oracle.com/javase/8/docs/platform/jpda/jdwp/jdwp-protocol.html#JDWP_VirtualMachine_Capabilities). In particular actions that require to enumerate all Java objects are not supported. However, it does support a few hot reloading cases that HotSpot does not.
40-
* When the `java.MultiThreaded` option is set to "false", [reference processing](https://docs.oracle.com/en/java/javase/22/docs/api/java.base/java/lang/ref/package-summary.html) will not happen. Depending on the application, this could create resource leaks. Note that this option is set to "false" automatically if Espresso runs in a context where a single-threaded language is enabled (for example, JavaScript).
40+
* When the `java.MultiThreaded` option is set to "false", [reference processing](https://docs.oracle.com/en/java/javase/25/docs/api/java.base/java/lang/ref/package-summary.html) will not happen. Depending on the application, this could create resource leaks. Note that this option is set to "false" automatically if Espresso runs in a context where a single-threaded language is enabled (for example, JavaScript).
4141
* Espresso does not support the [Polyglot API](https://www.graalvm.org/sdk/javadoc/org/graalvm/polyglot/package-summary.html) yet. However, it provides a guest Java Polyglot API, described in `polyglot.jar`. For more information, see [Interoperability with Truffle Languages](Interoperability.md).

0 commit comments

Comments
 (0)