diff --git a/.github/workflows/espresso-continuations.yml b/.github/workflows/espresso-continuations.yml
index 7186364e..bd98945b 100644
--- a/.github/workflows/espresso-continuations.yml
+++ b/.github/workflows/espresso-continuations.yml
@@ -19,10 +19,10 @@ jobs:
steps:
- uses: actions/checkout@v4
- name: Download Espresso
- run: curl -sL -o $RUNNER_TEMP/espresso-linux-amd64.tar.gz https://gds.oracle.com/download/espresso/archive/espresso-java21-24.2.2-linux-amd64.tar.gz
+ run: curl -sL -o $RUNNER_TEMP/espresso-linux-amd64.tar.gz https://gds.oracle.com/download/espresso/archive/espresso-java25-25.0.0-linux-amd64.tar.gz
- uses: actions/setup-java@v4
with:
- java-version: '21'
+ java-version: '25'
distribution: 'jdkfile'
jdkFile: ${{ runner.temp }}/espresso-linux-amd64.tar.gz
- name: Build and run 'espresso-continuations' using Maven
diff --git a/.github/workflows/graaljs-spring-boot-d3.yml b/.github/workflows/graaljs-spring-boot-d3.yml
index 24ba157c..6c16d0bd 100644
--- a/.github/workflows/graaljs-spring-boot-d3.yml
+++ b/.github/workflows/graaljs-spring-boot-d3.yml
@@ -22,7 +22,7 @@ jobs:
- uses: actions/checkout@v4
- uses: graalvm/setup-graalvm@v1
with:
- java-version: '24.0.2'
+ java-version: '25.0.0'
distribution: 'graalvm'
github-token: ${{ secrets.GITHUB_TOKEN }}
cache: 'maven'
diff --git a/.github/workflows/graaljs-starter.yml b/.github/workflows/graaljs-starter.yml
index 2849db30..50d214e9 100644
--- a/.github/workflows/graaljs-starter.yml
+++ b/.github/workflows/graaljs-starter.yml
@@ -20,7 +20,7 @@ jobs:
- uses: actions/checkout@v4
- uses: graalvm/setup-graalvm@v1
with:
- java-version: '24.0.2'
+ java-version: '25.0.0'
distribution: 'graalvm'
github-token: ${{ secrets.GITHUB_TOKEN }}
cache: 'maven'
diff --git a/.github/workflows/graaljs-webpack-guide.yml b/.github/workflows/graaljs-webpack-guide.yml
index 87ea3f2f..1cd19d7c 100644
--- a/.github/workflows/graaljs-webpack-guide.yml
+++ b/.github/workflows/graaljs-webpack-guide.yml
@@ -22,7 +22,7 @@ jobs:
- uses: actions/checkout@v4
- uses: graalvm/setup-graalvm@v1
with:
- java-version: '24.0.2'
+ java-version: '25.0.0'
distribution: 'graalvm'
github-token: ${{ secrets.GITHUB_TOKEN }}
cache: 'gradle'
diff --git a/.github/workflows/graalpy-custom-venv-guide.yml b/.github/workflows/graalpy-custom-venv-guide.yml
index 5a24f92d..03f02b53 100644
--- a/.github/workflows/graalpy-custom-venv-guide.yml
+++ b/.github/workflows/graalpy-custom-venv-guide.yml
@@ -20,13 +20,13 @@ jobs:
- uses: actions/checkout@v4
- uses: graalvm/setup-graalvm@v1
with:
- java-version: '24.0.2'
+ java-version: '25.0.0'
distribution: 'graalvm'
github-token: ${{ secrets.GITHUB_TOKEN }}
cache: 'maven'
- uses: actions/setup-python@v5
with:
- python-version: 'graalpy-24.1'
+ python-version: 'graalpy-25.0'
- name: Build, test, and run 'graalpy-custom-venv-guide' using Maven
shell: bash
run: |
diff --git a/.github/workflows/graalpy-freeze-dependencies-guide.yml b/.github/workflows/graalpy-freeze-dependencies-guide.yml
index 0d17df3a..25ddbe8d 100644
--- a/.github/workflows/graalpy-freeze-dependencies-guide.yml
+++ b/.github/workflows/graalpy-freeze-dependencies-guide.yml
@@ -20,7 +20,7 @@ jobs:
- uses: actions/checkout@v4
- uses: graalvm/setup-graalvm@v1
with:
- java-version: '24.0.2'
+ java-version: '25.0.0'
distribution: 'graalvm'
github-token: ${{ secrets.GITHUB_TOKEN }}
cache: 'maven'
diff --git a/.github/workflows/graalpy-javase-guide.yml b/.github/workflows/graalpy-javase-guide.yml
index f64c87d9..587ca2b4 100644
--- a/.github/workflows/graalpy-javase-guide.yml
+++ b/.github/workflows/graalpy-javase-guide.yml
@@ -20,7 +20,7 @@ jobs:
- uses: actions/checkout@v4
- uses: graalvm/setup-graalvm@v1
with:
- java-version: '24.0.2'
+ java-version: '25.0.0'
distribution: 'graalvm'
github-token: ${{ secrets.GITHUB_TOKEN }}
cache: 'maven'
diff --git a/.github/workflows/graalpy-jbang-qrcode.yml b/.github/workflows/graalpy-jbang-qrcode.yml
index 93c1568d..2954f93a 100644
--- a/.github/workflows/graalpy-jbang-qrcode.yml
+++ b/.github/workflows/graalpy-jbang-qrcode.yml
@@ -20,7 +20,7 @@ jobs:
- uses: actions/checkout@v4
- uses: graalvm/setup-graalvm@v1
with:
- java-version: '24.0.2'
+ java-version: '25.0.0'
distribution: 'graalvm'
github-token: ${{ secrets.GITHUB_TOKEN }}
- name: Run 'graalpy-jbang-qrcode' demo
diff --git a/.github/workflows/graalpy-jython-guide.yml b/.github/workflows/graalpy-jython-guide.yml
index 197b67ee..745890e4 100644
--- a/.github/workflows/graalpy-jython-guide.yml
+++ b/.github/workflows/graalpy-jython-guide.yml
@@ -20,7 +20,7 @@ jobs:
- uses: actions/checkout@v4
- uses: graalvm/setup-graalvm@v1
with:
- java-version: '24.0.2'
+ java-version: '25.0.0'
distribution: 'graalvm'
github-token: ${{ secrets.GITHUB_TOKEN }}
cache: 'maven'
diff --git a/.github/workflows/graalpy-micronaut-guide.yml b/.github/workflows/graalpy-micronaut-guide.yml
index ba3fd107..bae38e22 100644
--- a/.github/workflows/graalpy-micronaut-guide.yml
+++ b/.github/workflows/graalpy-micronaut-guide.yml
@@ -22,7 +22,7 @@ jobs:
- uses: actions/checkout@v4
- uses: graalvm/setup-graalvm@v1
with:
- java-version: '21.0.6'
+ java-version: '21.0.8'
distribution: 'graalvm'
github-token: ${{ secrets.GITHUB_TOKEN }}
cache: 'maven'
@@ -38,7 +38,7 @@ jobs:
kill $mnpid
- uses: graalvm/setup-graalvm@v1
with:
- java-version: '24.0.2'
+ java-version: '25.0.0'
distribution: 'graalvm'
github-token: ${{ secrets.GITHUB_TOKEN }}
cache: 'maven'
@@ -62,7 +62,7 @@ jobs:
- uses: actions/checkout@v4
- uses: graalvm/setup-graalvm@v1
with:
- java-version: '21.0.6'
+ java-version: '21.0.8'
distribution: 'graalvm'
github-token: ${{ secrets.GITHUB_TOKEN }}
cache: 'gradle'
@@ -78,7 +78,7 @@ jobs:
kill $mnpid
- uses: graalvm/setup-graalvm@v1
with:
- java-version: '24.0.2'
+ java-version: '25.0.0'
distribution: 'graalvm'
github-token: ${{ secrets.GITHUB_TOKEN }}
cache: 'gradle'
diff --git a/.github/workflows/graalpy-micronaut-multithreaded.yml b/.github/workflows/graalpy-micronaut-multithreaded.yml
index b1acb647..885a5323 100644
--- a/.github/workflows/graalpy-micronaut-multithreaded.yml
+++ b/.github/workflows/graalpy-micronaut-multithreaded.yml
@@ -22,7 +22,7 @@ jobs:
- uses: actions/checkout@v4
- uses: graalvm/setup-graalvm@v1
with:
- java-version: '21.0.6'
+ java-version: '21.0.8'
distribution: 'graalvm'
github-token: ${{ secrets.GITHUB_TOKEN }}
cache: 'maven'
@@ -39,7 +39,7 @@ jobs:
kill $mnpid
- uses: graalvm/setup-graalvm@v1
with:
- java-version: '24.0.2'
+ java-version: '25.0.0'
distribution: 'graalvm'
github-token: ${{ secrets.GITHUB_TOKEN }}
cache: 'maven'
@@ -64,7 +64,7 @@ jobs:
- uses: actions/checkout@v4
- uses: graalvm/setup-graalvm@v1
with:
- java-version: '21.0.6'
+ java-version: '21.0.8'
distribution: 'graalvm'
github-token: ${{ secrets.GITHUB_TOKEN }}
cache: 'gradle'
@@ -81,7 +81,7 @@ jobs:
kill $mnpid
- uses: graalvm/setup-graalvm@v1
with:
- java-version: '24.0.2'
+ java-version: '25.0.0'
distribution: 'graalvm'
github-token: ${{ secrets.GITHUB_TOKEN }}
cache: 'gradle'
diff --git a/.github/workflows/graalpy-micronaut-pygal-charts.yml b/.github/workflows/graalpy-micronaut-pygal-charts.yml
index 4b989e3b..6a99ba0a 100644
--- a/.github/workflows/graalpy-micronaut-pygal-charts.yml
+++ b/.github/workflows/graalpy-micronaut-pygal-charts.yml
@@ -22,7 +22,7 @@ jobs:
- uses: actions/checkout@v4
- uses: graalvm/setup-graalvm@v1
with:
- java-version: '24.0.2'
+ java-version: '25.0.0'
distribution: 'graalvm'
github-token: ${{ secrets.GITHUB_TOKEN }}
cache: 'maven'
diff --git a/.github/workflows/graalpy-native-extensions-guide.yml b/.github/workflows/graalpy-native-extensions-guide.yml
index e6aadd7f..82be2b7b 100644
--- a/.github/workflows/graalpy-native-extensions-guide.yml
+++ b/.github/workflows/graalpy-native-extensions-guide.yml
@@ -20,7 +20,7 @@ jobs:
- uses: actions/checkout@v4
- uses: graalvm/setup-graalvm@v1
with:
- java-version: '24.0.2'
+ java-version: '25.0.0'
distribution: 'graalvm'
github-token: ${{ secrets.GITHUB_TOKEN }}
cache: 'maven'
diff --git a/.github/workflows/graalpy-openai-starter.yml b/.github/workflows/graalpy-openai-starter.yml
index 776596ed..1d5f9f7c 100644
--- a/.github/workflows/graalpy-openai-starter.yml
+++ b/.github/workflows/graalpy-openai-starter.yml
@@ -20,7 +20,7 @@ jobs:
- uses: actions/checkout@v4
- uses: graalvm/setup-graalvm@v1
with:
- java-version: '24.0.2'
+ java-version: '25.0.0'
distribution: 'graalvm'
github-token: ${{ secrets.GITHUB_TOKEN }}
cache: 'maven'
diff --git a/.github/workflows/graalpy-script-debug.yml b/.github/workflows/graalpy-script-debug.yml
index 5dbaf7a2..422bc7c2 100644
--- a/.github/workflows/graalpy-script-debug.yml
+++ b/.github/workflows/graalpy-script-debug.yml
@@ -20,7 +20,7 @@ jobs:
- uses: actions/checkout@v4
- uses: graalvm/setup-graalvm@v1
with:
- java-version: '24.0.2'
+ java-version: '25.0.0'
distribution: 'graalvm'
github-token: ${{ secrets.GITHUB_TOKEN }}
cache: 'maven'
diff --git a/.github/workflows/graalpy-spring-boot-guide.yml b/.github/workflows/graalpy-spring-boot-guide.yml
index 5984977d..52aa91da 100644
--- a/.github/workflows/graalpy-spring-boot-guide.yml
+++ b/.github/workflows/graalpy-spring-boot-guide.yml
@@ -22,7 +22,7 @@ jobs:
- uses: actions/checkout@v4
- uses: graalvm/setup-graalvm@v1
with:
- java-version: '21.0.6'
+ java-version: '21.0.8'
distribution: 'graalvm'
github-token: ${{ secrets.GITHUB_TOKEN }}
cache: 'maven'
@@ -38,7 +38,7 @@ jobs:
kill $sbpid
- uses: graalvm/setup-graalvm@v1
with:
- java-version: '24.0.2'
+ java-version: '25.0.0'
distribution: 'graalvm'
github-token: ${{ secrets.GITHUB_TOKEN }}
cache: 'maven'
@@ -62,7 +62,7 @@ jobs:
- uses: actions/checkout@v4
- uses: graalvm/setup-graalvm@v1
with:
- java-version: '21.0.6'
+ java-version: '21.0.8'
distribution: 'graalvm'
github-token: ${{ secrets.GITHUB_TOKEN }}
cache: 'gradle'
@@ -78,7 +78,7 @@ jobs:
kill $sbpid
- uses: graalvm/setup-graalvm@v1
with:
- java-version: '24.0.2'
+ java-version: '25.0.0'
distribution: 'graalvm'
github-token: ${{ secrets.GITHUB_TOKEN }}
cache: 'gradle'
diff --git a/.github/workflows/graalpy-spring-boot-pygal-charts.yml b/.github/workflows/graalpy-spring-boot-pygal-charts.yml
index 20b73d4d..94848793 100644
--- a/.github/workflows/graalpy-spring-boot-pygal-charts.yml
+++ b/.github/workflows/graalpy-spring-boot-pygal-charts.yml
@@ -22,7 +22,7 @@ jobs:
- uses: actions/checkout@v4
- uses: graalvm/setup-graalvm@v1
with:
- java-version: '24.0.2'
+ java-version: '25.0.0'
distribution: 'graalvm'
github-token: ${{ secrets.GITHUB_TOKEN }}
cache: 'maven'
diff --git a/.github/workflows/graalpy-starter.yml b/.github/workflows/graalpy-starter.yml
index e9b95545..339ddd86 100644
--- a/.github/workflows/graalpy-starter.yml
+++ b/.github/workflows/graalpy-starter.yml
@@ -20,7 +20,7 @@ jobs:
- uses: actions/checkout@v4
- uses: graalvm/setup-graalvm@v1
with:
- java-version: '24.0.2'
+ java-version: '25.0.0'
distribution: 'graalvm'
github-token: ${{ secrets.GITHUB_TOKEN }}
cache: 'maven'
diff --git a/.github/workflows/graalwasm-embed-c-code-guide.yml b/.github/workflows/graalwasm-embed-c-code-guide.yml
index b698be22..ddd38512 100644
--- a/.github/workflows/graalwasm-embed-c-code-guide.yml
+++ b/.github/workflows/graalwasm-embed-c-code-guide.yml
@@ -30,7 +30,7 @@ jobs:
./emsdk activate latest
- uses: graalvm/setup-graalvm@v1
with:
- java-version: '24.0.2'
+ java-version: '25.0.0'
distribution: 'graalvm'
github-token: ${{ secrets.GITHUB_TOKEN }}
cache: 'maven'
@@ -39,4 +39,4 @@ jobs:
source ./emsdk/emsdk_env.sh
cd graalwasm/graalwasm-embed-c-code-guide
./mvnw --no-transfer-progress package
- ./mvnw --no-transfer-progress exec:java
+ ./mvnw --no-transfer-progress exec:exec
diff --git a/.github/workflows/graalwasm-embed-go-code-guide.yml b/.github/workflows/graalwasm-embed-go-code-guide.yml
index eb9b5dce..3c7b1232 100644
--- a/.github/workflows/graalwasm-embed-go-code-guide.yml
+++ b/.github/workflows/graalwasm-embed-go-code-guide.yml
@@ -28,7 +28,7 @@ jobs:
- name: Set up GraalVM
uses: graalvm/setup-graalvm@v1
with:
- java-version: '24.0.2'
+ java-version: '25.0.0'
distribution: 'graalvm'
github-token: ${{ secrets.GITHUB_TOKEN }}
cache: 'maven'
diff --git a/.github/workflows/graalwasm-embed-rust-code-guide.yml b/.github/workflows/graalwasm-embed-rust-code-guide.yml
index 1375de90..16a9b4e7 100644
--- a/.github/workflows/graalwasm-embed-rust-code-guide.yml
+++ b/.github/workflows/graalwasm-embed-rust-code-guide.yml
@@ -26,7 +26,7 @@ jobs:
- name: Set up GraalVM
uses: graalvm/setup-graalvm@v1
with:
- java-version: '24.0.2'
+ java-version: '25.0.0'
distribution: 'graalvm'
github-token: ${{ secrets.GITHUB_TOKEN }}
cache: 'maven'
diff --git a/.github/workflows/graalwasm-micronaut-photon.yml b/.github/workflows/graalwasm-micronaut-photon.yml
index 11c9f452..a41c443f 100644
--- a/.github/workflows/graalwasm-micronaut-photon.yml
+++ b/.github/workflows/graalwasm-micronaut-photon.yml
@@ -20,7 +20,7 @@ jobs:
- uses: actions/checkout@v4
- uses: graalvm/setup-graalvm@v1
with:
- java-version: '24.0.2'
+ java-version: '25.0.0'
distribution: 'graalvm'
github-token: ${{ secrets.GITHUB_TOKEN }}
cache: 'maven'
diff --git a/.github/workflows/graalwasm-spring-boot-photon.yml b/.github/workflows/graalwasm-spring-boot-photon.yml
index c24e350e..e8b7c3c2 100644
--- a/.github/workflows/graalwasm-spring-boot-photon.yml
+++ b/.github/workflows/graalwasm-spring-boot-photon.yml
@@ -20,7 +20,7 @@ jobs:
- uses: actions/checkout@v4
- uses: graalvm/setup-graalvm@v1
with:
- java-version: '24.0.2'
+ java-version: '25.0.0'
distribution: 'graalvm'
github-token: ${{ secrets.GITHUB_TOKEN }}
cache: 'maven'
diff --git a/.github/workflows/graalwasm-starter.yml b/.github/workflows/graalwasm-starter.yml
index 5ec1ed06..a8eda182 100644
--- a/.github/workflows/graalwasm-starter.yml
+++ b/.github/workflows/graalwasm-starter.yml
@@ -20,7 +20,7 @@ jobs:
- uses: actions/checkout@v4
- uses: graalvm/setup-graalvm@v1
with:
- java-version: '24.0.2'
+ java-version: '25.0.0'
distribution: 'graalvm'
github-token: ${{ secrets.GITHUB_TOKEN }}
cache: 'maven'
@@ -29,7 +29,7 @@ jobs:
run: |
cd graalwasm/graalwasm-starter
./mvnw --no-transfer-progress test
- ./mvnw --no-transfer-progress exec:java
+ ./mvnw --no-transfer-progress exec:exec
- name: Build, test, and run 'graalwasm-starter' using Gradle
run: |
cd graalwasm/graalwasm-starter
diff --git a/espresso/espresso-continuations/README.md b/espresso/espresso-continuations/README.md
index 623d2d91..eaa7861f 100644
--- a/espresso/espresso-continuations/README.md
+++ b/espresso/espresso-continuations/README.md
@@ -5,7 +5,7 @@ Each time it runs, the program increments a counter, displays the updated value,
## Preparation
-Install [Espresso 24.2.2](https://www.graalvm.org/latest/reference-manual/espresso/) and set the value of `JAVA_HOME` accordingly.
+Install [Espresso 25.0.0](https://www.graalvm.org/latest/reference-manual/espresso/) and set the value of `JAVA_HOME` accordingly.
## Run the Application
diff --git a/espresso/espresso-continuations/pom.xml b/espresso/espresso-continuations/pom.xml
index d7ba491b..9a51bf94 100644
--- a/espresso/espresso-continuations/pom.xml
+++ b/espresso/espresso-continuations/pom.xml
@@ -11,7 +11,7 @@
https://www.example.com
- 24.2.2
+ 25.0.0
java
UTF-8
21
diff --git a/graaljs/graaljs-spring-boot-d3/pom.xml b/graaljs/graaljs-spring-boot-d3/pom.xml
index b41831f8..605d09b2 100644
--- a/graaljs/graaljs-spring-boot-d3/pom.xml
+++ b/graaljs/graaljs-spring-boot-d3/pom.xml
@@ -19,7 +19,7 @@
Demo project for Spring with GraalJS
- 24.2.2
+ 25.0.0
--enable-native-access=ALL-UNNAMED --sun-misc-unsafe-memory-access=allow
diff --git a/graaljs/graaljs-starter/README.md b/graaljs/graaljs-starter/README.md
index 443b117b..2b91627f 100644
--- a/graaljs/graaljs-starter/README.md
+++ b/graaljs/graaljs-starter/README.md
@@ -4,11 +4,11 @@ A minimal Java application that embeds JavaScript code with GraalJS.
## Preparation
-Install GraalVM for JDK 24 and set the value of `JAVA_HOME` accordingly.
+Install GraalVM 25 and set the value of `JAVA_HOME` accordingly.
We recommend using [SDKMAN!](https://sdkman.io/). (For other download options, see [GraalVM Downloads](https://www.graalvm.org/downloads/).)
```bash
-sdk install java 24.0.2-graal
+sdk install java 25-graal
```
## Run the Application Using Maven
diff --git a/graaljs/graaljs-starter/build.gradle.kts b/graaljs/graaljs-starter/build.gradle.kts
index 177c1d07..f284d8b7 100644
--- a/graaljs/graaljs-starter/build.gradle.kts
+++ b/graaljs/graaljs-starter/build.gradle.kts
@@ -9,8 +9,8 @@ repositories {
}
dependencies {
- implementation("org.graalvm.polyglot:polyglot:24.2.2")
- implementation("org.graalvm.polyglot:js:24.2.2")
+ implementation("org.graalvm.polyglot:polyglot:25.0.0")
+ implementation("org.graalvm.polyglot:js:25.0.0")
// Use JUnit Jupiter for testing.
testImplementation("org.junit.jupiter:junit-jupiter:5.11.0")
diff --git a/graaljs/graaljs-starter/gradle/wrapper/gradle-wrapper.jar b/graaljs/graaljs-starter/gradle/wrapper/gradle-wrapper.jar
index a4b76b95..8bdaf60c 100644
Binary files a/graaljs/graaljs-starter/gradle/wrapper/gradle-wrapper.jar and b/graaljs/graaljs-starter/gradle/wrapper/gradle-wrapper.jar differ
diff --git a/graaljs/graaljs-starter/gradle/wrapper/gradle-wrapper.properties b/graaljs/graaljs-starter/gradle/wrapper/gradle-wrapper.properties
index 0aaefbca..2a84e188 100644
--- a/graaljs/graaljs-starter/gradle/wrapper/gradle-wrapper.properties
+++ b/graaljs/graaljs-starter/gradle/wrapper/gradle-wrapper.properties
@@ -1,6 +1,6 @@
distributionBase=GRADLE_USER_HOME
distributionPath=wrapper/dists
-distributionUrl=https\://services.gradle.org/distributions/gradle-8.10.1-bin.zip
+distributionUrl=https\://services.gradle.org/distributions/gradle-9.0.0-bin.zip
networkTimeout=10000
validateDistributionUrl=true
zipStoreBase=GRADLE_USER_HOME
diff --git a/graaljs/graaljs-starter/gradlew b/graaljs/graaljs-starter/gradlew
index f5feea6d..ef07e016 100755
--- a/graaljs/graaljs-starter/gradlew
+++ b/graaljs/graaljs-starter/gradlew
@@ -1,7 +1,7 @@
#!/bin/sh
#
-# Copyright © 2015-2021 the original authors.
+# Copyright © 2015 the original authors.
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
@@ -86,8 +86,7 @@ done
# shellcheck disable=SC2034
APP_BASE_NAME=${0##*/}
# Discard cd standard output in case $CDPATH is set (https://github.com/gradle/gradle/issues/25036)
-APP_HOME=$( cd -P "${APP_HOME:-./}" > /dev/null && printf '%s
-' "$PWD" ) || exit
+APP_HOME=$( cd -P "${APP_HOME:-./}" > /dev/null && printf '%s\n' "$PWD" ) || exit
# Use the maximum available, or set MAX_FD != -1 to use that value.
MAX_FD=maximum
@@ -115,7 +114,7 @@ case "$( uname )" in #(
NONSTOP* ) nonstop=true ;;
esac
-CLASSPATH=$APP_HOME/gradle/wrapper/gradle-wrapper.jar
+CLASSPATH="\\\"\\\""
# Determine the Java command to use to start the JVM.
@@ -206,7 +205,7 @@ fi
DEFAULT_JVM_OPTS='"-Xmx64m" "-Xms64m"'
# Collect all arguments for the java command:
-# * DEFAULT_JVM_OPTS, JAVA_OPTS, JAVA_OPTS, and optsEnvironmentVar are not allowed to contain shell fragments,
+# * DEFAULT_JVM_OPTS, JAVA_OPTS, and optsEnvironmentVar are not allowed to contain shell fragments,
# and any embedded shellness will be escaped.
# * For example: A user cannot expect ${Hostname} to be expanded, as it is an environment variable and will be
# treated as '${Hostname}' itself on the command line.
@@ -214,7 +213,7 @@ DEFAULT_JVM_OPTS='"-Xmx64m" "-Xms64m"'
set -- \
"-Dorg.gradle.appname=$APP_BASE_NAME" \
-classpath "$CLASSPATH" \
- org.gradle.wrapper.GradleWrapperMain \
+ -jar "$APP_HOME/gradle/wrapper/gradle-wrapper.jar" \
"$@"
# Stop when "xargs" is not available.
diff --git a/graaljs/graaljs-starter/gradlew.bat b/graaljs/graaljs-starter/gradlew.bat
index 9d21a218..db3a6ac2 100644
--- a/graaljs/graaljs-starter/gradlew.bat
+++ b/graaljs/graaljs-starter/gradlew.bat
@@ -70,11 +70,11 @@ goto fail
:execute
@rem Setup the command line
-set CLASSPATH=%APP_HOME%\gradle\wrapper\gradle-wrapper.jar
+set CLASSPATH=
@rem Execute Gradle
-"%JAVA_EXE%" %DEFAULT_JVM_OPTS% %JAVA_OPTS% %GRADLE_OPTS% "-Dorg.gradle.appname=%APP_BASE_NAME%" -classpath "%CLASSPATH%" org.gradle.wrapper.GradleWrapperMain %*
+"%JAVA_EXE%" %DEFAULT_JVM_OPTS% %JAVA_OPTS% %GRADLE_OPTS% "-Dorg.gradle.appname=%APP_BASE_NAME%" -classpath "%CLASSPATH%" -jar "%APP_HOME%\gradle\wrapper\gradle-wrapper.jar" %*
:end
@rem End local scope for the variables with windows NT shell
diff --git a/graaljs/graaljs-starter/pom.xml b/graaljs/graaljs-starter/pom.xml
index b738ad82..915130bd 100644
--- a/graaljs/graaljs-starter/pom.xml
+++ b/graaljs/graaljs-starter/pom.xml
@@ -31,12 +31,12 @@
org.graalvm.polyglot
polyglot
- 24.2.2
+ 25.0.0
org.graalvm.polyglot
js
- 24.2.2
+ 25.0.0
pom
diff --git a/graaljs/graaljs-webpack-guide/README.md b/graaljs/graaljs-webpack-guide/README.md
index 4640ddad..c0adc614 100644
--- a/graaljs/graaljs-webpack-guide/README.md
+++ b/graaljs/graaljs-webpack-guide/README.md
@@ -54,8 +54,8 @@ _build.gradle_
```gradle
dependencies {
- implementation 'org.graalvm.polyglot:polyglot:24.2.2' // ①
- implementation 'org.graalvm.polyglot:js:24.2.2' // ②
+ implementation 'org.graalvm.polyglot:polyglot:25.0.0' // ①
+ implementation 'org.graalvm.polyglot:js:25.0.0' // ②
}
```
@@ -129,13 +129,13 @@ _pom.xml_
org.graalvm.polyglot
polyglot
- 24.2.2
+ 25.0.0
org.graalvm.polyglot
js
- 24.2.2
+ 25.0.0
pom
diff --git a/graaljs/graaljs-webpack-guide/build.gradle b/graaljs/graaljs-webpack-guide/build.gradle
index 50a02eac..b4d45695 100644
--- a/graaljs/graaljs-webpack-guide/build.gradle
+++ b/graaljs/graaljs-webpack-guide/build.gradle
@@ -10,8 +10,8 @@ application {
mainClass = 'com.example.App'
}
dependencies {
- implementation 'org.graalvm.polyglot:polyglot:24.2.2'
- implementation 'org.graalvm.polyglot:js:24.2.2'
+ implementation 'org.graalvm.polyglot:polyglot:25.0.0'
+ implementation 'org.graalvm.polyglot:js:25.0.0'
testImplementation platform('org.junit:junit-bom:5.11.0')
testImplementation 'org.junit.jupiter:junit-jupiter-api'
diff --git a/graaljs/graaljs-webpack-guide/gradle/wrapper/gradle-wrapper.jar b/graaljs/graaljs-webpack-guide/gradle/wrapper/gradle-wrapper.jar
index 1b33c55b..8bdaf60c 100644
Binary files a/graaljs/graaljs-webpack-guide/gradle/wrapper/gradle-wrapper.jar and b/graaljs/graaljs-webpack-guide/gradle/wrapper/gradle-wrapper.jar differ
diff --git a/graaljs/graaljs-webpack-guide/gradle/wrapper/gradle-wrapper.properties b/graaljs/graaljs-webpack-guide/gradle/wrapper/gradle-wrapper.properties
index ca025c83..2a84e188 100644
--- a/graaljs/graaljs-webpack-guide/gradle/wrapper/gradle-wrapper.properties
+++ b/graaljs/graaljs-webpack-guide/gradle/wrapper/gradle-wrapper.properties
@@ -1,6 +1,6 @@
distributionBase=GRADLE_USER_HOME
distributionPath=wrapper/dists
-distributionUrl=https\://services.gradle.org/distributions/gradle-8.14-bin.zip
+distributionUrl=https\://services.gradle.org/distributions/gradle-9.0.0-bin.zip
networkTimeout=10000
validateDistributionUrl=true
zipStoreBase=GRADLE_USER_HOME
diff --git a/graaljs/graaljs-webpack-guide/gradlew b/graaljs/graaljs-webpack-guide/gradlew
index 23d15a93..ef07e016 100755
--- a/graaljs/graaljs-webpack-guide/gradlew
+++ b/graaljs/graaljs-webpack-guide/gradlew
@@ -1,7 +1,7 @@
#!/bin/sh
#
-# Copyright © 2015-2021 the original authors.
+# Copyright © 2015 the original authors.
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
diff --git a/graaljs/graaljs-webpack-guide/pom.xml b/graaljs/graaljs-webpack-guide/pom.xml
index 615f9975..20119ab7 100644
--- a/graaljs/graaljs-webpack-guide/pom.xml
+++ b/graaljs/graaljs-webpack-guide/pom.xml
@@ -32,12 +32,12 @@
org.graalvm.polyglot
polyglot
- 24.2.2
+ 25.0.0
org.graalvm.polyglot
js
- 24.2.2
+ 25.0.0
pom
diff --git a/graalpy/graalpy-custom-venv-guide/README.md b/graalpy/graalpy-custom-venv-guide/README.md
index 9b9f5bcd..c56c2f5d 100644
--- a/graalpy/graalpy-custom-venv-guide/README.md
+++ b/graalpy/graalpy-custom-venv-guide/README.md
@@ -54,14 +54,14 @@ Add the required dependencies for GraalPy in the `` section of the
org.graalvm.polyglot
python
- 24.2.2
+ 25.0.0
pom
org.graalvm.polyglot
polyglot
- 24.2.2
+ 25.0.0
```
diff --git a/graalpy/graalpy-custom-venv-guide/pom.xml b/graalpy/graalpy-custom-venv-guide/pom.xml
index 447377e3..9d81c2d1 100644
--- a/graalpy/graalpy-custom-venv-guide/pom.xml
+++ b/graalpy/graalpy-custom-venv-guide/pom.xml
@@ -17,14 +17,14 @@
org.graalvm.polyglot
python
- 24.2.2
+ 25.0.0
pom
org.graalvm.polyglot
polyglot
- 24.2.2
+ 25.0.0
diff --git a/graalpy/graalpy-freeze-dependencies-guide/README.md b/graalpy/graalpy-freeze-dependencies-guide/README.md
index 2a7015e6..80797380 100644
--- a/graalpy/graalpy-freeze-dependencies-guide/README.md
+++ b/graalpy/graalpy-freeze-dependencies-guide/README.md
@@ -68,7 +68,7 @@ For Maven, add dependency on GraalPy runtime, and configure the GraalPy Maven pl
org.graalvm.polyglot
python
- 24.2.2
+ 25.0.0
pom
```
@@ -80,7 +80,7 @@ For Maven, add dependency on GraalPy runtime, and configure the GraalPy Maven pl
org.graalvm.python
graalpy-maven-plugin
- 24.2.2
+ 25.0.0
vaderSentiment==3.3.2
@@ -104,7 +104,7 @@ For Gradle, add the GraalPy plugin, configure it, and add the dependency on the
```kotlin
plugins {
application
- id("org.graalvm.python") version "24.2.2"
+ id("org.graalvm.python") version "25.0.0"
}
```
@@ -178,7 +178,7 @@ If you use Maven, paste them in the `pom.xml` section of the packages and wrap t
org.graalvm.python
graalpy-maven-plugin
- 24.2.2
+ 25.0.0
vaderSentiment==3.3.2
diff --git a/graalpy/graalpy-freeze-dependencies-guide/build.gradle.kts b/graalpy/graalpy-freeze-dependencies-guide/build.gradle.kts
index d63917e0..7f5ab931 100644
--- a/graalpy/graalpy-freeze-dependencies-guide/build.gradle.kts
+++ b/graalpy/graalpy-freeze-dependencies-guide/build.gradle.kts
@@ -1,6 +1,6 @@
plugins {
application
- id("org.graalvm.python") version "24.2.2"
+ id("org.graalvm.python") version "25.0.0"
}
// To make the paths of this reference solution (without 'app' subdirectory for sources)
@@ -34,7 +34,7 @@ repositories {
}
// This dependency is necessary only for the example Java code, not for building and running pip freeze:
-dependencies.add("implementation", "org.graalvm.python:python-embedding:24.2.2")
+dependencies.add("implementation", "org.graalvm.python:python-embedding:25.0.0")
group = "org.example"
version = "1.0-SNAPSHOT"
diff --git a/graalpy/graalpy-freeze-dependencies-guide/gradle/wrapper/gradle-wrapper.jar b/graalpy/graalpy-freeze-dependencies-guide/gradle/wrapper/gradle-wrapper.jar
index a4b76b95..8bdaf60c 100644
Binary files a/graalpy/graalpy-freeze-dependencies-guide/gradle/wrapper/gradle-wrapper.jar and b/graalpy/graalpy-freeze-dependencies-guide/gradle/wrapper/gradle-wrapper.jar differ
diff --git a/graalpy/graalpy-freeze-dependencies-guide/gradle/wrapper/gradle-wrapper.properties b/graalpy/graalpy-freeze-dependencies-guide/gradle/wrapper/gradle-wrapper.properties
index df97d72b..2a84e188 100644
--- a/graalpy/graalpy-freeze-dependencies-guide/gradle/wrapper/gradle-wrapper.properties
+++ b/graalpy/graalpy-freeze-dependencies-guide/gradle/wrapper/gradle-wrapper.properties
@@ -1,6 +1,6 @@
distributionBase=GRADLE_USER_HOME
distributionPath=wrapper/dists
-distributionUrl=https\://services.gradle.org/distributions/gradle-8.10.2-bin.zip
+distributionUrl=https\://services.gradle.org/distributions/gradle-9.0.0-bin.zip
networkTimeout=10000
validateDistributionUrl=true
zipStoreBase=GRADLE_USER_HOME
diff --git a/graalpy/graalpy-freeze-dependencies-guide/gradlew b/graalpy/graalpy-freeze-dependencies-guide/gradlew
index f5feea6d..ef07e016 100755
--- a/graalpy/graalpy-freeze-dependencies-guide/gradlew
+++ b/graalpy/graalpy-freeze-dependencies-guide/gradlew
@@ -1,7 +1,7 @@
#!/bin/sh
#
-# Copyright © 2015-2021 the original authors.
+# Copyright © 2015 the original authors.
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
@@ -86,8 +86,7 @@ done
# shellcheck disable=SC2034
APP_BASE_NAME=${0##*/}
# Discard cd standard output in case $CDPATH is set (https://github.com/gradle/gradle/issues/25036)
-APP_HOME=$( cd -P "${APP_HOME:-./}" > /dev/null && printf '%s
-' "$PWD" ) || exit
+APP_HOME=$( cd -P "${APP_HOME:-./}" > /dev/null && printf '%s\n' "$PWD" ) || exit
# Use the maximum available, or set MAX_FD != -1 to use that value.
MAX_FD=maximum
@@ -115,7 +114,7 @@ case "$( uname )" in #(
NONSTOP* ) nonstop=true ;;
esac
-CLASSPATH=$APP_HOME/gradle/wrapper/gradle-wrapper.jar
+CLASSPATH="\\\"\\\""
# Determine the Java command to use to start the JVM.
@@ -206,7 +205,7 @@ fi
DEFAULT_JVM_OPTS='"-Xmx64m" "-Xms64m"'
# Collect all arguments for the java command:
-# * DEFAULT_JVM_OPTS, JAVA_OPTS, JAVA_OPTS, and optsEnvironmentVar are not allowed to contain shell fragments,
+# * DEFAULT_JVM_OPTS, JAVA_OPTS, and optsEnvironmentVar are not allowed to contain shell fragments,
# and any embedded shellness will be escaped.
# * For example: A user cannot expect ${Hostname} to be expanded, as it is an environment variable and will be
# treated as '${Hostname}' itself on the command line.
@@ -214,7 +213,7 @@ DEFAULT_JVM_OPTS='"-Xmx64m" "-Xms64m"'
set -- \
"-Dorg.gradle.appname=$APP_BASE_NAME" \
-classpath "$CLASSPATH" \
- org.gradle.wrapper.GradleWrapperMain \
+ -jar "$APP_HOME/gradle/wrapper/gradle-wrapper.jar" \
"$@"
# Stop when "xargs" is not available.
diff --git a/graalpy/graalpy-freeze-dependencies-guide/gradlew.bat b/graalpy/graalpy-freeze-dependencies-guide/gradlew.bat
index 9b42019c..5eed7ee8 100644
--- a/graalpy/graalpy-freeze-dependencies-guide/gradlew.bat
+++ b/graalpy/graalpy-freeze-dependencies-guide/gradlew.bat
@@ -70,11 +70,11 @@ goto fail
:execute
@rem Setup the command line
-set CLASSPATH=%APP_HOME%\gradle\wrapper\gradle-wrapper.jar
+set CLASSPATH=
@rem Execute Gradle
-"%JAVA_EXE%" %DEFAULT_JVM_OPTS% %JAVA_OPTS% %GRADLE_OPTS% "-Dorg.gradle.appname=%APP_BASE_NAME%" -classpath "%CLASSPATH%" org.gradle.wrapper.GradleWrapperMain %*
+"%JAVA_EXE%" %DEFAULT_JVM_OPTS% %JAVA_OPTS% %GRADLE_OPTS% "-Dorg.gradle.appname=%APP_BASE_NAME%" -classpath "%CLASSPATH%" -jar "%APP_HOME%\gradle\wrapper\gradle-wrapper.jar" %*
:end
@rem End local scope for the variables with windows NT shell
diff --git a/graalpy/graalpy-freeze-dependencies-guide/pom.xml b/graalpy/graalpy-freeze-dependencies-guide/pom.xml
index ee655101..33fae4c1 100644
--- a/graalpy/graalpy-freeze-dependencies-guide/pom.xml
+++ b/graalpy/graalpy-freeze-dependencies-guide/pom.xml
@@ -19,7 +19,7 @@
org.graalvm.polyglot
python
- 24.2.2
+ 25.0.0
pom
@@ -27,7 +27,7 @@
org.graalvm.python
python-embedding
- 24.2.2
+ 25.0.0
@@ -44,7 +44,7 @@
org.graalvm.python
graalpy-maven-plugin
- 24.2.2
+ 25.0.0
vaderSentiment==3.3.2
@@ -80,7 +80,7 @@
org.graalvm.python
graalpy-maven-plugin
- 24.2.2
+ 25.0.0
vaderSentiment==3.3.2
diff --git a/graalpy/graalpy-javase-guide/README.md b/graalpy/graalpy-javase-guide/README.md
index 9a5568fe..ef83c371 100644
--- a/graalpy/graalpy-javase-guide/README.md
+++ b/graalpy/graalpy-javase-guide/README.md
@@ -62,14 +62,14 @@ dependencies automatically.
org.graalvm.polyglot
python
- 24.2.2
+ 25.0.0
pom
org.graalvm.python
python-embedding
- 24.2.2
+ 25.0.0
```
@@ -93,7 +93,7 @@ You can use the GraalPy plugins for Maven or Gradle to manage Python packages fo
org.graalvm.python
graalpy-maven-plugin
- 24.2.2
+ 25.0.0
qrcode==7.4.2
@@ -118,7 +118,7 @@ You can use the GraalPy plugins for Maven or Gradle to manage Python packages fo
```kotlin
plugins {
application
- id("org.graalvm.python") version "24.2.2"
+ id("org.graalvm.python") version "25.0.0"
}
graalPy {
diff --git a/graalpy/graalpy-javase-guide/build.gradle.kts b/graalpy/graalpy-javase-guide/build.gradle.kts
index 89db3d04..69e0f62a 100644
--- a/graalpy/graalpy-javase-guide/build.gradle.kts
+++ b/graalpy/graalpy-javase-guide/build.gradle.kts
@@ -1,6 +1,6 @@
plugins {
application
- id("org.graalvm.python") version "24.2.2"
+ id("org.graalvm.python") version "25.0.0"
}
graalPy {
diff --git a/graalpy/graalpy-javase-guide/gradle/wrapper/gradle-wrapper.jar b/graalpy/graalpy-javase-guide/gradle/wrapper/gradle-wrapper.jar
index a4b76b95..8bdaf60c 100644
Binary files a/graalpy/graalpy-javase-guide/gradle/wrapper/gradle-wrapper.jar and b/graalpy/graalpy-javase-guide/gradle/wrapper/gradle-wrapper.jar differ
diff --git a/graalpy/graalpy-javase-guide/gradle/wrapper/gradle-wrapper.properties b/graalpy/graalpy-javase-guide/gradle/wrapper/gradle-wrapper.properties
index df97d72b..2a84e188 100644
--- a/graalpy/graalpy-javase-guide/gradle/wrapper/gradle-wrapper.properties
+++ b/graalpy/graalpy-javase-guide/gradle/wrapper/gradle-wrapper.properties
@@ -1,6 +1,6 @@
distributionBase=GRADLE_USER_HOME
distributionPath=wrapper/dists
-distributionUrl=https\://services.gradle.org/distributions/gradle-8.10.2-bin.zip
+distributionUrl=https\://services.gradle.org/distributions/gradle-9.0.0-bin.zip
networkTimeout=10000
validateDistributionUrl=true
zipStoreBase=GRADLE_USER_HOME
diff --git a/graalpy/graalpy-javase-guide/gradlew b/graalpy/graalpy-javase-guide/gradlew
index f5feea6d..ef07e016 100755
--- a/graalpy/graalpy-javase-guide/gradlew
+++ b/graalpy/graalpy-javase-guide/gradlew
@@ -1,7 +1,7 @@
#!/bin/sh
#
-# Copyright © 2015-2021 the original authors.
+# Copyright © 2015 the original authors.
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
@@ -86,8 +86,7 @@ done
# shellcheck disable=SC2034
APP_BASE_NAME=${0##*/}
# Discard cd standard output in case $CDPATH is set (https://github.com/gradle/gradle/issues/25036)
-APP_HOME=$( cd -P "${APP_HOME:-./}" > /dev/null && printf '%s
-' "$PWD" ) || exit
+APP_HOME=$( cd -P "${APP_HOME:-./}" > /dev/null && printf '%s\n' "$PWD" ) || exit
# Use the maximum available, or set MAX_FD != -1 to use that value.
MAX_FD=maximum
@@ -115,7 +114,7 @@ case "$( uname )" in #(
NONSTOP* ) nonstop=true ;;
esac
-CLASSPATH=$APP_HOME/gradle/wrapper/gradle-wrapper.jar
+CLASSPATH="\\\"\\\""
# Determine the Java command to use to start the JVM.
@@ -206,7 +205,7 @@ fi
DEFAULT_JVM_OPTS='"-Xmx64m" "-Xms64m"'
# Collect all arguments for the java command:
-# * DEFAULT_JVM_OPTS, JAVA_OPTS, JAVA_OPTS, and optsEnvironmentVar are not allowed to contain shell fragments,
+# * DEFAULT_JVM_OPTS, JAVA_OPTS, and optsEnvironmentVar are not allowed to contain shell fragments,
# and any embedded shellness will be escaped.
# * For example: A user cannot expect ${Hostname} to be expanded, as it is an environment variable and will be
# treated as '${Hostname}' itself on the command line.
@@ -214,7 +213,7 @@ DEFAULT_JVM_OPTS='"-Xmx64m" "-Xms64m"'
set -- \
"-Dorg.gradle.appname=$APP_BASE_NAME" \
-classpath "$CLASSPATH" \
- org.gradle.wrapper.GradleWrapperMain \
+ -jar "$APP_HOME/gradle/wrapper/gradle-wrapper.jar" \
"$@"
# Stop when "xargs" is not available.
diff --git a/graalpy/graalpy-javase-guide/gradlew.bat b/graalpy/graalpy-javase-guide/gradlew.bat
index 9b42019c..5eed7ee8 100644
--- a/graalpy/graalpy-javase-guide/gradlew.bat
+++ b/graalpy/graalpy-javase-guide/gradlew.bat
@@ -70,11 +70,11 @@ goto fail
:execute
@rem Setup the command line
-set CLASSPATH=%APP_HOME%\gradle\wrapper\gradle-wrapper.jar
+set CLASSPATH=
@rem Execute Gradle
-"%JAVA_EXE%" %DEFAULT_JVM_OPTS% %JAVA_OPTS% %GRADLE_OPTS% "-Dorg.gradle.appname=%APP_BASE_NAME%" -classpath "%CLASSPATH%" org.gradle.wrapper.GradleWrapperMain %*
+"%JAVA_EXE%" %DEFAULT_JVM_OPTS% %JAVA_OPTS% %GRADLE_OPTS% "-Dorg.gradle.appname=%APP_BASE_NAME%" -classpath "%CLASSPATH%" -jar "%APP_HOME%\gradle\wrapper\gradle-wrapper.jar" %*
:end
@rem End local scope for the variables with windows NT shell
diff --git a/graalpy/graalpy-javase-guide/pom.xml b/graalpy/graalpy-javase-guide/pom.xml
index 29d7d8f3..5f672602 100644
--- a/graalpy/graalpy-javase-guide/pom.xml
+++ b/graalpy/graalpy-javase-guide/pom.xml
@@ -18,14 +18,14 @@
org.graalvm.polyglot
python
- 24.2.2
+ 25.0.0
pom
org.graalvm.python
python-embedding
- 24.2.2
+ 25.0.0
@@ -34,7 +34,7 @@
org.graalvm.python
graalpy-maven-plugin
- 24.2.2
+ 25.0.0
qrcode==7.4.2
diff --git a/graalpy/graalpy-jbang-qrcode/README.md b/graalpy/graalpy-jbang-qrcode/README.md
index 63ceb24b..aa63ac8a 100644
--- a/graalpy/graalpy-jbang-qrcode/README.md
+++ b/graalpy/graalpy-jbang-qrcode/README.md
@@ -4,11 +4,11 @@ This demo illustrates how GraalPy can be used to embed the [`qrcode` Python pack
## Preparation
-Install GraalVM for JDK 24 and set the value of `JAVA_HOME` accordingly.
+Install GraalVM 25 and set the value of `JAVA_HOME` accordingly.
We recommend using [SDKMAN!](https://sdkman.io/). (For other download options, see [GraalVM Downloads](https://www.graalvm.org/downloads/).)
```bash
-sdk install java 24.0.2-graal
+sdk install java 25-graal
```
Afterward, [install `jbang`](https://www.jbang.dev/download/), for with:
diff --git a/graalpy/graalpy-jbang-qrcode/qrcode.java b/graalpy/graalpy-jbang-qrcode/qrcode.java
index 08f6b164..9eac9f2a 100644
--- a/graalpy/graalpy-jbang-qrcode/qrcode.java
+++ b/graalpy/graalpy-jbang-qrcode/qrcode.java
@@ -4,13 +4,13 @@
* Licensed under the Universal Permissive License v 1.0 as shown at https://opensource.org/license/UPL.
*/
-//DEPS org.graalvm.python:python-language:24.2.2
-//DEPS org.graalvm.python:python-launcher:24.2.2
-//DEPS org.graalvm.python:python-resources:24.2.2
-//DEPS org.graalvm.python:python-embedding:24.2.2
-//DEPS org.graalvm.python:python-embedding-tools:24.2.2
-//DEPS org.graalvm.python:jbang:24.2.2
-//DEPS org.graalvm.truffle:truffle-runtime:24.2.2
+//DEPS org.graalvm.python:python-language:25.0.0
+//DEPS org.graalvm.python:python-launcher:25.0.0
+//DEPS org.graalvm.python:python-resources:25.0.0
+//DEPS org.graalvm.python:python-embedding:25.0.0
+//DEPS org.graalvm.python:python-embedding-tools:25.0.0
+//DEPS org.graalvm.python:jbang:25.0.0
+//DEPS org.graalvm.truffle:truffle-runtime:25.0.0
//PIP qrcode==7.4.2
import org.graalvm.python.embedding.GraalPyResources;
diff --git a/graalpy/graalpy-jython-guide/README.md b/graalpy/graalpy-jython-guide/README.md
index f71779b3..a3a80e47 100644
--- a/graalpy/graalpy-jython-guide/README.md
+++ b/graalpy/graalpy-jython-guide/README.md
@@ -115,14 +115,14 @@ Add the required dependencies for GraalPy in the `` section of the
org.graalvm.polyglot
python
- 24.2.2
+ 25.0.0
pom
org.graalvm.polyglot
polyglot
- 24.2.2
+ 25.0.0
```
diff --git a/graalpy/graalpy-jython-guide/pom.xml b/graalpy/graalpy-jython-guide/pom.xml
index 7e2ac0c2..f7fe6e08 100644
--- a/graalpy/graalpy-jython-guide/pom.xml
+++ b/graalpy/graalpy-jython-guide/pom.xml
@@ -24,13 +24,13 @@
org.graalvm.polyglot
python
- 24.2.2
+ 25.0.0
pom
org.graalvm.polyglot
polyglot
- 24.2.2
+ 25.0.0
diff --git a/graalpy/graalpy-micronaut-guide/README.md b/graalpy/graalpy-micronaut-guide/README.md
index bf87633e..1c38e31b 100644
--- a/graalpy/graalpy-micronaut-guide/README.md
+++ b/graalpy/graalpy-micronaut-guide/README.md
@@ -72,13 +72,13 @@ related dependencies automatically.
org.graalvm.python
python
- 24.2.2
+ 25.0.0
pom
org.graalvm.python
python-embedding
- 24.2.2
+ 25.0.0
io.micronaut.views
@@ -112,7 +112,7 @@ Add the `graalpy-maven-plugin` configuration into the plugins section of the POM
org.graalvm.python
graalpy-maven-plugin
- 24.2.2
+ 25.0.0
vader-sentiment==3.2.1.1
@@ -132,7 +132,7 @@ Add the `graalpy-maven-plugin` configuration into the plugins section of the POM
`build.gradle.kts`
```
plugins {
- id("org.graalvm.python") version "24.2.2"
+ id("org.graalvm.python") version "25.0.0"
// ...
```
diff --git a/graalpy/graalpy-micronaut-guide/build.gradle.kts b/graalpy/graalpy-micronaut-guide/build.gradle.kts
index 72542506..a7e99c06 100644
--- a/graalpy/graalpy-micronaut-guide/build.gradle.kts
+++ b/graalpy/graalpy-micronaut-guide/build.gradle.kts
@@ -1,5 +1,5 @@
plugins {
- id("org.graalvm.python") version "24.2.2"
+ id("org.graalvm.python") version "25.0.0"
// ...
id("com.github.johnrengelman.shadow") version "8.1.1"
id("io.micronaut.application") version "4.4.2"
diff --git a/graalpy/graalpy-micronaut-guide/gradle/wrapper/gradle-wrapper.properties b/graalpy/graalpy-micronaut-guide/gradle/wrapper/gradle-wrapper.properties
index df97d72b..37f853b1 100644
--- a/graalpy/graalpy-micronaut-guide/gradle/wrapper/gradle-wrapper.properties
+++ b/graalpy/graalpy-micronaut-guide/gradle/wrapper/gradle-wrapper.properties
@@ -1,6 +1,6 @@
distributionBase=GRADLE_USER_HOME
distributionPath=wrapper/dists
-distributionUrl=https\://services.gradle.org/distributions/gradle-8.10.2-bin.zip
+distributionUrl=https\://services.gradle.org/distributions/gradle-8.13-bin.zip
networkTimeout=10000
validateDistributionUrl=true
zipStoreBase=GRADLE_USER_HOME
diff --git a/graalpy/graalpy-micronaut-guide/pom.xml b/graalpy/graalpy-micronaut-guide/pom.xml
index f9798b44..a9945a8e 100644
--- a/graalpy/graalpy-micronaut-guide/pom.xml
+++ b/graalpy/graalpy-micronaut-guide/pom.xml
@@ -35,13 +35,13 @@
org.graalvm.python
python
- 24.2.2
+ 25.0.0
pom
org.graalvm.python
python-embedding
- 24.2.2
+ 25.0.0
io.micronaut.views
@@ -90,7 +90,7 @@
org.graalvm.python
graalpy-maven-plugin
- 24.2.2
+ 25.0.0
vader-sentiment==3.2.1.1
diff --git a/graalpy/graalpy-micronaut-multithreaded/README.md b/graalpy/graalpy-micronaut-multithreaded/README.md
index fd60b31f..410a2f35 100644
--- a/graalpy/graalpy-micronaut-multithreaded/README.md
+++ b/graalpy/graalpy-micronaut-multithreaded/README.md
@@ -72,13 +72,13 @@ For Gradle, the GraalPy Gradle plugin that we will add in the next section will
org.graalvm.python
python
- 24.2.2
+ 25.0.0
pom
org.graalvm.python
python-embedding
- 24.2.2
+ 25.0.0
```
@@ -101,7 +101,7 @@ Add the `graalpy-maven-plugin` configuration into the plugins section of the POM
org.graalvm.python
graalpy-maven-plugin
- 24.2.2
+ 25.0.0
numpy==1.26.4
@@ -155,7 +155,7 @@ Add the `graalpy-maven-plugin` configuration into the plugins section of the POM
`build.gradle.kts`
```
plugins {
- id("org.graalvm.python") version "24.2.2"
+ id("org.graalvm.python") version "25.0.0"
// ...
```
diff --git a/graalpy/graalpy-micronaut-multithreaded/build.gradle.kts b/graalpy/graalpy-micronaut-multithreaded/build.gradle.kts
index 876eb962..adfd4d16 100644
--- a/graalpy/graalpy-micronaut-multithreaded/build.gradle.kts
+++ b/graalpy/graalpy-micronaut-multithreaded/build.gradle.kts
@@ -1,5 +1,5 @@
plugins {
- id("org.graalvm.python") version "24.2.2"
+ id("org.graalvm.python") version "25.0.0"
// ...
id("com.github.johnrengelman.shadow") version "8.1.1"
id("io.micronaut.application") version "4.4.2"
diff --git a/graalpy/graalpy-micronaut-multithreaded/gradle/wrapper/gradle-wrapper.properties b/graalpy/graalpy-micronaut-multithreaded/gradle/wrapper/gradle-wrapper.properties
index df97d72b..37f853b1 100644
--- a/graalpy/graalpy-micronaut-multithreaded/gradle/wrapper/gradle-wrapper.properties
+++ b/graalpy/graalpy-micronaut-multithreaded/gradle/wrapper/gradle-wrapper.properties
@@ -1,6 +1,6 @@
distributionBase=GRADLE_USER_HOME
distributionPath=wrapper/dists
-distributionUrl=https\://services.gradle.org/distributions/gradle-8.10.2-bin.zip
+distributionUrl=https\://services.gradle.org/distributions/gradle-8.13-bin.zip
networkTimeout=10000
validateDistributionUrl=true
zipStoreBase=GRADLE_USER_HOME
diff --git a/graalpy/graalpy-micronaut-multithreaded/pom.xml b/graalpy/graalpy-micronaut-multithreaded/pom.xml
index 47e1ef48..2c83191c 100644
--- a/graalpy/graalpy-micronaut-multithreaded/pom.xml
+++ b/graalpy/graalpy-micronaut-multithreaded/pom.xml
@@ -34,13 +34,13 @@
org.graalvm.python
python
- 24.2.2
+ 25.0.0
pom
org.graalvm.python
python-embedding
- 24.2.2
+ 25.0.0
@@ -136,7 +136,7 @@
org.graalvm.python
graalpy-maven-plugin
- 24.2.2
+ 25.0.0
numpy==1.26.4
diff --git a/graalpy/graalpy-micronaut-pygal-charts/README.md b/graalpy/graalpy-micronaut-pygal-charts/README.md
index 67e52143..2a1014cb 100644
--- a/graalpy/graalpy-micronaut-pygal-charts/README.md
+++ b/graalpy/graalpy-micronaut-pygal-charts/README.md
@@ -5,11 +5,11 @@ In particular, this demo shows four different approaches to interact with Pygal
## Preparation
-Install GraalVM for JDK 24 and set the value of `JAVA_HOME` accordingly.
+Install GraalVM 25 and set the value of `JAVA_HOME` accordingly.
We recommend using [SDKMAN!](https://sdkman.io/). (For other download options, see [GraalVM Downloads](https://www.graalvm.org/downloads/).)
```bash
-sdk install java 24.0.2-graal
+sdk install java 25-graal
```
## Run the Application
diff --git a/graalpy/graalpy-micronaut-pygal-charts/pom.xml b/graalpy/graalpy-micronaut-pygal-charts/pom.xml
index 253211c2..6a39bbb7 100644
--- a/graalpy/graalpy-micronaut-pygal-charts/pom.xml
+++ b/graalpy/graalpy-micronaut-pygal-charts/pom.xml
@@ -13,7 +13,7 @@
4.6.1
- 24.2.2
+ 25.0.0
jar
21
21
diff --git a/graalpy/graalpy-native-extensions-guide/README.md b/graalpy/graalpy-native-extensions-guide/README.md
index 187c4f6f..08d66c95 100644
--- a/graalpy/graalpy-native-extensions-guide/README.md
+++ b/graalpy/graalpy-native-extensions-guide/README.md
@@ -62,14 +62,14 @@ Add the required dependencies for GraalPy in the dependency section of the POM.
org.graalvm.python
python
- 24.2.2
+ 25.0.0
pom
org.graalvm.python
python-embedding
- 24.2.2
+ 25.0.0
```
@@ -92,7 +92,7 @@ You can use the GraalPy plugin to manage Python packages for you.
org.graalvm.python
graalpy-maven-plugin
- 24.2.2
+ 25.0.0
polyleven==0.8
diff --git a/graalpy/graalpy-native-extensions-guide/pom.xml b/graalpy/graalpy-native-extensions-guide/pom.xml
index da7e0f12..c236c417 100644
--- a/graalpy/graalpy-native-extensions-guide/pom.xml
+++ b/graalpy/graalpy-native-extensions-guide/pom.xml
@@ -19,14 +19,14 @@
org.graalvm.python
python
- 24.2.2
+ 25.0.0
pom
org.graalvm.python
python-embedding
- 24.2.2
+ 25.0.0
@@ -35,7 +35,7 @@
org.graalvm.python
graalpy-maven-plugin
- 24.2.2
+ 25.0.0
polyleven==0.8
diff --git a/graalpy/graalpy-openai-starter/README.md b/graalpy/graalpy-openai-starter/README.md
index 83aef7da..89117a8b 100644
--- a/graalpy/graalpy-openai-starter/README.md
+++ b/graalpy/graalpy-openai-starter/README.md
@@ -4,11 +4,11 @@ A minimal Java application that embeds [the official Python library for the Open
## Preparation
-Install GraalVM for JDK 24 and set the value of `JAVA_HOME` accordingly.
+Install GraalVM 25 and set the value of `JAVA_HOME` accordingly.
We recommend using [SDKMAN!](https://sdkman.io/). (For other download options, see [GraalVM Downloads](https://www.graalvm.org/downloads/).)
```bash
-sdk install java 24.0.2-graal
+sdk install java 25-graal
```
This project also requires that an OpenAI API key is set via the `OPENAI_API_KEY` environment variable.
@@ -25,7 +25,7 @@ To build and test the demo, run:
To execute the main method, run:
```bash
-./mvnw exec:java -Dexec.args="'Say Hello from GraalPy'"
+./mvnw exec:exec -Duser.input="'How can I check if my code runs on GraalPy?'"
```
## Run the Application Using Gradle
@@ -39,7 +39,7 @@ To build and test the demo, run:
To execute the main method, run:
```bash
-./gradlew run --args="'Say Hello from GraalPy'"
+./gradlew run --args="'How can I check if my code runs on GraalPy?'"
```
## Implementation Details
diff --git a/graalpy/graalpy-openai-starter/build.gradle.kts b/graalpy/graalpy-openai-starter/build.gradle.kts
index bfa4d9bb..c2f15bbe 100644
--- a/graalpy/graalpy-openai-starter/build.gradle.kts
+++ b/graalpy/graalpy-openai-starter/build.gradle.kts
@@ -2,7 +2,7 @@ plugins {
// Apply the application plugin to add support for building a CLI application in Java.
application
// Apply GraalPy plugin to add Python packages as dependencies.
- id("org.graalvm.python") version "24.2.2"
+ id("org.graalvm.python") version "25.0.0"
}
repositories {
@@ -19,22 +19,7 @@ dependencies {
graalPy {
packages = setOf(
- "annotated-types==0.7.0",
- "anyio==4.6.0",
- "certifi==2024.8.30",
- "distro==1.9.0",
- "h11==0.14.0",
- "hpy==0.9.0",
- "httpcore==1.0.5",
- "httpx==0.27.2",
- "idna==3.10",
- "jiter==0.5.0", // uses a native extension
- "openai==1.47.1",
- "pydantic==2.4.2",
- "pydantic_core==2.10.1", // uses a native extension
- "sniffio==1.3.1",
- "tqdm==4.66.5",
- "typing_extensions==4.12.2"
+ "openai==1.107.3",
)
}
@@ -43,7 +28,14 @@ application {
mainClass = "com.example.App"
}
+val truffleJvmArgs = listOf("--enable-native-access=ALL-UNNAMED", "--sun-misc-unsafe-memory-access=allow")
+
+tasks.named("run") {
+ jvmArgs = truffleJvmArgs
+}
+
tasks.named("test") {
+ jvmArgs = truffleJvmArgs
// Use JUnit Platform for unit tests.
useJUnitPlatform()
}
diff --git a/graalpy/graalpy-openai-starter/graalpy.lock b/graalpy/graalpy-openai-starter/graalpy.lock
new file mode 100644
index 00000000..15da585d
--- /dev/null
+++ b/graalpy/graalpy-openai-starter/graalpy.lock
@@ -0,0 +1,26 @@
+# This file was generated by maven goal 'org.graalvm.python:graalpy-maven-plugin:lock-packages'.
+#
+# WARNING: Any manual changes are done at your own risk and will be overwritten when the goal is executed.
+#
+# This file is meant to be tracked in a version control system.
+#
+# This file contains a list of all required Python packages with their specific versions,
+# based on the packages defined in the plugin configuration and their dependencies.
+# graalpy-version: 25.0.0
+# input-packages: openai==1.107.3
+annotated-types==0.7.0
+anyio==4.10.0
+certifi==2025.8.3
+distro==1.9.0
+h11==0.16.0
+httpcore==1.0.9
+httpx==0.28.1
+idna==3.10
+jiter==0.11.0
+openai==1.107.3
+pydantic==2.11.9
+pydantic_core==2.33.2
+sniffio==1.3.1
+tqdm==4.67.1
+typing-inspection==0.4.1
+typing_extensions==4.15.0
diff --git a/graalpy/graalpy-openai-starter/gradle/wrapper/gradle-wrapper.jar b/graalpy/graalpy-openai-starter/gradle/wrapper/gradle-wrapper.jar
index a4b76b95..8bdaf60c 100644
Binary files a/graalpy/graalpy-openai-starter/gradle/wrapper/gradle-wrapper.jar and b/graalpy/graalpy-openai-starter/gradle/wrapper/gradle-wrapper.jar differ
diff --git a/graalpy/graalpy-openai-starter/gradle/wrapper/gradle-wrapper.properties b/graalpy/graalpy-openai-starter/gradle/wrapper/gradle-wrapper.properties
index 0aaefbca..2a84e188 100644
--- a/graalpy/graalpy-openai-starter/gradle/wrapper/gradle-wrapper.properties
+++ b/graalpy/graalpy-openai-starter/gradle/wrapper/gradle-wrapper.properties
@@ -1,6 +1,6 @@
distributionBase=GRADLE_USER_HOME
distributionPath=wrapper/dists
-distributionUrl=https\://services.gradle.org/distributions/gradle-8.10.1-bin.zip
+distributionUrl=https\://services.gradle.org/distributions/gradle-9.0.0-bin.zip
networkTimeout=10000
validateDistributionUrl=true
zipStoreBase=GRADLE_USER_HOME
diff --git a/graalpy/graalpy-openai-starter/gradlew b/graalpy/graalpy-openai-starter/gradlew
index f5feea6d..ef07e016 100755
--- a/graalpy/graalpy-openai-starter/gradlew
+++ b/graalpy/graalpy-openai-starter/gradlew
@@ -1,7 +1,7 @@
#!/bin/sh
#
-# Copyright © 2015-2021 the original authors.
+# Copyright © 2015 the original authors.
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
@@ -86,8 +86,7 @@ done
# shellcheck disable=SC2034
APP_BASE_NAME=${0##*/}
# Discard cd standard output in case $CDPATH is set (https://github.com/gradle/gradle/issues/25036)
-APP_HOME=$( cd -P "${APP_HOME:-./}" > /dev/null && printf '%s
-' "$PWD" ) || exit
+APP_HOME=$( cd -P "${APP_HOME:-./}" > /dev/null && printf '%s\n' "$PWD" ) || exit
# Use the maximum available, or set MAX_FD != -1 to use that value.
MAX_FD=maximum
@@ -115,7 +114,7 @@ case "$( uname )" in #(
NONSTOP* ) nonstop=true ;;
esac
-CLASSPATH=$APP_HOME/gradle/wrapper/gradle-wrapper.jar
+CLASSPATH="\\\"\\\""
# Determine the Java command to use to start the JVM.
@@ -206,7 +205,7 @@ fi
DEFAULT_JVM_OPTS='"-Xmx64m" "-Xms64m"'
# Collect all arguments for the java command:
-# * DEFAULT_JVM_OPTS, JAVA_OPTS, JAVA_OPTS, and optsEnvironmentVar are not allowed to contain shell fragments,
+# * DEFAULT_JVM_OPTS, JAVA_OPTS, and optsEnvironmentVar are not allowed to contain shell fragments,
# and any embedded shellness will be escaped.
# * For example: A user cannot expect ${Hostname} to be expanded, as it is an environment variable and will be
# treated as '${Hostname}' itself on the command line.
@@ -214,7 +213,7 @@ DEFAULT_JVM_OPTS='"-Xmx64m" "-Xms64m"'
set -- \
"-Dorg.gradle.appname=$APP_BASE_NAME" \
-classpath "$CLASSPATH" \
- org.gradle.wrapper.GradleWrapperMain \
+ -jar "$APP_HOME/gradle/wrapper/gradle-wrapper.jar" \
"$@"
# Stop when "xargs" is not available.
diff --git a/graalpy/graalpy-openai-starter/gradlew.bat b/graalpy/graalpy-openai-starter/gradlew.bat
index 9d21a218..db3a6ac2 100644
--- a/graalpy/graalpy-openai-starter/gradlew.bat
+++ b/graalpy/graalpy-openai-starter/gradlew.bat
@@ -70,11 +70,11 @@ goto fail
:execute
@rem Setup the command line
-set CLASSPATH=%APP_HOME%\gradle\wrapper\gradle-wrapper.jar
+set CLASSPATH=
@rem Execute Gradle
-"%JAVA_EXE%" %DEFAULT_JVM_OPTS% %JAVA_OPTS% %GRADLE_OPTS% "-Dorg.gradle.appname=%APP_BASE_NAME%" -classpath "%CLASSPATH%" org.gradle.wrapper.GradleWrapperMain %*
+"%JAVA_EXE%" %DEFAULT_JVM_OPTS% %JAVA_OPTS% %GRADLE_OPTS% "-Dorg.gradle.appname=%APP_BASE_NAME%" -classpath "%CLASSPATH%" -jar "%APP_HOME%\gradle\wrapper\gradle-wrapper.jar" %*
:end
@rem End local scope for the variables with windows NT shell
diff --git a/graalpy/graalpy-openai-starter/pom.xml b/graalpy/graalpy-openai-starter/pom.xml
index 335a2e9b..ed67293d 100644
--- a/graalpy/graalpy-openai-starter/pom.xml
+++ b/graalpy/graalpy-openai-starter/pom.xml
@@ -1,157 +1,167 @@
- 4.0.0
+ xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
+ 4.0.0
- com.example
- demo
- 1.0-SNAPSHOT
+ com.example
+ demo
+ 1.0-SNAPSHOT
- demo
- https://www.example.com
+ demo
+ https://www.example.com
-
- 24.2.2
- UTF-8
- 21
-
+
+ How can I check if my code runs on GraalPy?
+ 25.0.0
+ UTF-8
+ 21
+ --enable-native-access=ALL-UNNAMED
+ --sun-misc-unsafe-memory-access=allow
+
-
-
-
- org.junit
- junit-bom
- 5.11.0
- pom
- import
-
-
-
+
+
+
+ org.junit
+ junit-bom
+ 5.11.0
+ pom
+ import
+
+
+
-
-
- org.graalvm.polyglot
- polyglot
- ${graalpy.version}
-
-
- org.graalvm.polyglot
- python
- ${graalpy.version}
- pom
-
-
- org.graalvm.python
- python-embedding
- ${graalpy.version}
-
+
+
+ org.graalvm.polyglot
+ polyglot
+ ${graalpy.version}
+
+
+ org.graalvm.polyglot
+ python
+ ${graalpy.version}
+ pom
+
+
+ org.graalvm.python
+ python-embedding
+ ${graalpy.version}
+
-
- org.junit.jupiter
- junit-jupiter-api
- test
-
-
-
- org.junit.jupiter
- junit-jupiter-params
- test
-
-
+
+ org.junit.jupiter
+ junit-jupiter-api
+ test
+
+
+
+ org.junit.jupiter
+ junit-jupiter-params
+ test
+
+
-
-
-
- org.graalvm.python
- graalpy-maven-plugin
- ${graalpy.version}
-
-
- annotated-types==0.7.0
- anyio==4.6.0
- certifi==2024.8.30
- distro==1.9.0
- h11==0.14.0
- hpy==0.9.0
- httpcore==1.0.5
- httpx==0.27.2
- idna==3.10
- jiter==0.5.0
- openai==1.47.1
- pydantic==2.4.2
- pydantic_core==2.10.1
- sniffio==1.3.1
- tqdm==4.66.5
- typing_extensions==4.12.2
-
-
-
-
-
- process-graalpy-resources
-
-
-
-
-
+
+
+
+ org.graalvm.python
+ graalpy-maven-plugin
+ ${graalpy.version}
+
+
+ openai==1.107.3
+
+
+
+
+
+ process-graalpy-resources
+
+
+
+
+
+ org.apache.maven.plugins
+ maven-surefire-plugin
+
+ ${truffle.jvm.arg1} ${truffle.jvm.arg2}
+
+
+
+ org.codehaus.mojo
+ exec-maven-plugin
+
+ java
+
+ -classpath
+
+ ${truffle.jvm.arg1}
+ ${truffle.jvm.arg2}
+ com.example.App
+ ${user.input}
+
+
+
+
-
-
-
-
- maven-clean-plugin
- 3.4.0
-
-
-
- maven-resources-plugin
- 3.3.1
-
-
- maven-compiler-plugin
- 3.13.0
-
-
- maven-surefire-plugin
- 3.3.0
-
-
- org.codehaus.mojo
- exec-maven-plugin
- 1.2.1
-
-
-
- java
-
-
-
-
- com.example.App
-
-
-
- maven-jar-plugin
- 3.4.2
-
-
- maven-install-plugin
- 3.1.2
-
-
- maven-deploy-plugin
- 3.1.2
-
-
-
- maven-site-plugin
- 3.12.1
-
-
- maven-project-info-reports-plugin
- 3.6.1
-
-
-
-
+
+
+
+
+ maven-clean-plugin
+ 3.4.0
+
+
+
+ maven-resources-plugin
+ 3.3.1
+
+
+ maven-compiler-plugin
+ 3.13.0
+
+
+ maven-surefire-plugin
+ 3.3.0
+
+
+ org.codehaus.mojo
+ exec-maven-plugin
+ 1.2.1
+
+
+
+ java
+
+
+
+
+ com.example.App
+
+
+
+ maven-jar-plugin
+ 3.4.2
+
+
+ maven-install-plugin
+ 3.1.2
+
+
+ maven-deploy-plugin
+ 3.1.2
+
+
+
+ maven-site-plugin
+ 3.12.1
+
+
+ maven-project-info-reports-plugin
+ 3.6.1
+
+
+
+
diff --git a/graalpy/graalpy-openai-starter/src/main/java/com/example/App.java b/graalpy/graalpy-openai-starter/src/main/java/com/example/App.java
index c5c1120a..b67706e8 100644
--- a/graalpy/graalpy-openai-starter/src/main/java/com/example/App.java
+++ b/graalpy/graalpy-openai-starter/src/main/java/com/example/App.java
@@ -7,17 +7,18 @@
package com.example;
import org.graalvm.polyglot.Context;
+import org.graalvm.polyglot.EnvironmentAccess;
import org.graalvm.polyglot.PolyglotException;
import org.graalvm.python.embedding.GraalPyResources;
-import java.util.List;
-
public class App {
public static void main(String[] args) {
- String userInput = args.length > 0 ? args[0] : "Say this is a test";
- try (Context context = GraalPyResources.createContext()) {
- CreateChatCompletionFunction createChatCompletion = context.eval("python",
+ String input = args.length > 0 ? args[0] : "How can I check if my code runs on GraalPy?";
+ try (Context context = GraalPyResources.contextBuilder()
+ .allowEnvironmentAccess(EnvironmentAccess.INHERIT) // for OPENAI_API_KEY env var access
+ .build()) {
+ CreateResponseFunction createResponseFunction = context.eval("python",
// language=python
"""
import os
@@ -28,42 +29,28 @@ public static void main(String[] args) {
api_key=os.environ.get("OPENAI_API_KEY"),
)
- def create_chat_completion(user_input):
- return client.chat.completions.create(
- messages=[
- {
- "role": "user",
- "content": user_input,
- }
- ],
- model="gpt-3.5-turbo",
+ def create_response(input):
+ return client.responses.create(
+ model="gpt-4o",
+ instructions="You are a coding assistant that talks like a pirate.",
+ input=input,
)
- create_chat_completion
- """).as(CreateChatCompletionFunction.class);
- ChatCompletion chatCompletion = createChatCompletion.apply(userInput);
- for (Choice choice : chatCompletion.choices()) {
- System.out.println(choice.message().content());
- }
+ create_response
+ """).as(CreateResponseFunction.class);
+ Response response = createResponseFunction.apply(input);
+ System.out.println(response.output_text());
} catch (PolyglotException e) {
throw new RuntimeException("Failed to run Python code. Did you set the OPENAI_API_KEY environment variable?", e);
}
}
@FunctionalInterface
- public interface CreateChatCompletionFunction {
- ChatCompletion apply(String choice);
- }
-
- public interface ChatCompletion {
- List choices();
- }
-
- public interface Choice {
- ChatCompletionMessage message();
+ public interface CreateResponseFunction {
+ Response apply(String choice);
}
- public interface ChatCompletionMessage {
- String content();
+ public interface Response {
+ String output_text();
}
}
diff --git a/graalpy/graalpy-scripts-debug-guide/README.md b/graalpy/graalpy-scripts-debug-guide/README.md
index 3fa72f29..cc0f1b54 100644
--- a/graalpy/graalpy-scripts-debug-guide/README.md
+++ b/graalpy/graalpy-scripts-debug-guide/README.md
@@ -87,27 +87,27 @@ Add the required dependencies for GraalPy in the `` section of the
org.graalvm.polyglot
python
- 24.2.2
+ 25.0.0
pom
org.graalvm.polyglot
polyglot
- 24.2.2
+ 25.0.0
org.graalvm.tools
dap-tool
- 24.2.2
+ 25.0.0
```
`build.gradle.kts`
```kotlin
dependencies {
- implementation("org.graalvm.polyglot:python:24.2.2") // ①
- implementation("org.graalvm.polyglot:polyglot:24.2.2") // ③
- implementation("org.graalvm.tools:dap-tool:24.2.2") // ④
+ implementation("org.graalvm.polyglot:python:25.0.0") // ①
+ implementation("org.graalvm.polyglot:polyglot:25.0.0") // ③
+ implementation("org.graalvm.tools:dap-tool:25.0.0") // ④
}
```
diff --git a/graalpy/graalpy-scripts-debug-guide/build.gradle.kts b/graalpy/graalpy-scripts-debug-guide/build.gradle.kts
index a8c5ae78..cb4f5280 100644
--- a/graalpy/graalpy-scripts-debug-guide/build.gradle.kts
+++ b/graalpy/graalpy-scripts-debug-guide/build.gradle.kts
@@ -14,9 +14,9 @@ repositories {
}
dependencies {
- implementation("org.graalvm.polyglot:python:24.2.2") // ①
- implementation("org.graalvm.polyglot:polyglot:24.2.2") // ③
- implementation("org.graalvm.tools:dap-tool:24.2.2") // ④
+ implementation("org.graalvm.polyglot:python:25.0.0") // ①
+ implementation("org.graalvm.polyglot:polyglot:25.0.0") // ③
+ implementation("org.graalvm.tools:dap-tool:25.0.0") // ④
}
application {
diff --git a/graalpy/graalpy-scripts-debug-guide/gradle/wrapper/gradle-wrapper.jar b/graalpy/graalpy-scripts-debug-guide/gradle/wrapper/gradle-wrapper.jar
index a4b76b95..8bdaf60c 100644
Binary files a/graalpy/graalpy-scripts-debug-guide/gradle/wrapper/gradle-wrapper.jar and b/graalpy/graalpy-scripts-debug-guide/gradle/wrapper/gradle-wrapper.jar differ
diff --git a/graalpy/graalpy-scripts-debug-guide/gradle/wrapper/gradle-wrapper.properties b/graalpy/graalpy-scripts-debug-guide/gradle/wrapper/gradle-wrapper.properties
index 0aaefbca..2a84e188 100644
--- a/graalpy/graalpy-scripts-debug-guide/gradle/wrapper/gradle-wrapper.properties
+++ b/graalpy/graalpy-scripts-debug-guide/gradle/wrapper/gradle-wrapper.properties
@@ -1,6 +1,6 @@
distributionBase=GRADLE_USER_HOME
distributionPath=wrapper/dists
-distributionUrl=https\://services.gradle.org/distributions/gradle-8.10.1-bin.zip
+distributionUrl=https\://services.gradle.org/distributions/gradle-9.0.0-bin.zip
networkTimeout=10000
validateDistributionUrl=true
zipStoreBase=GRADLE_USER_HOME
diff --git a/graalpy/graalpy-scripts-debug-guide/gradlew b/graalpy/graalpy-scripts-debug-guide/gradlew
index f5feea6d..ef07e016 100755
--- a/graalpy/graalpy-scripts-debug-guide/gradlew
+++ b/graalpy/graalpy-scripts-debug-guide/gradlew
@@ -1,7 +1,7 @@
#!/bin/sh
#
-# Copyright © 2015-2021 the original authors.
+# Copyright © 2015 the original authors.
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
@@ -86,8 +86,7 @@ done
# shellcheck disable=SC2034
APP_BASE_NAME=${0##*/}
# Discard cd standard output in case $CDPATH is set (https://github.com/gradle/gradle/issues/25036)
-APP_HOME=$( cd -P "${APP_HOME:-./}" > /dev/null && printf '%s
-' "$PWD" ) || exit
+APP_HOME=$( cd -P "${APP_HOME:-./}" > /dev/null && printf '%s\n' "$PWD" ) || exit
# Use the maximum available, or set MAX_FD != -1 to use that value.
MAX_FD=maximum
@@ -115,7 +114,7 @@ case "$( uname )" in #(
NONSTOP* ) nonstop=true ;;
esac
-CLASSPATH=$APP_HOME/gradle/wrapper/gradle-wrapper.jar
+CLASSPATH="\\\"\\\""
# Determine the Java command to use to start the JVM.
@@ -206,7 +205,7 @@ fi
DEFAULT_JVM_OPTS='"-Xmx64m" "-Xms64m"'
# Collect all arguments for the java command:
-# * DEFAULT_JVM_OPTS, JAVA_OPTS, JAVA_OPTS, and optsEnvironmentVar are not allowed to contain shell fragments,
+# * DEFAULT_JVM_OPTS, JAVA_OPTS, and optsEnvironmentVar are not allowed to contain shell fragments,
# and any embedded shellness will be escaped.
# * For example: A user cannot expect ${Hostname} to be expanded, as it is an environment variable and will be
# treated as '${Hostname}' itself on the command line.
@@ -214,7 +213,7 @@ DEFAULT_JVM_OPTS='"-Xmx64m" "-Xms64m"'
set -- \
"-Dorg.gradle.appname=$APP_BASE_NAME" \
-classpath "$CLASSPATH" \
- org.gradle.wrapper.GradleWrapperMain \
+ -jar "$APP_HOME/gradle/wrapper/gradle-wrapper.jar" \
"$@"
# Stop when "xargs" is not available.
diff --git a/graalpy/graalpy-scripts-debug-guide/gradlew.bat b/graalpy/graalpy-scripts-debug-guide/gradlew.bat
index 9d21a218..db3a6ac2 100644
--- a/graalpy/graalpy-scripts-debug-guide/gradlew.bat
+++ b/graalpy/graalpy-scripts-debug-guide/gradlew.bat
@@ -70,11 +70,11 @@ goto fail
:execute
@rem Setup the command line
-set CLASSPATH=%APP_HOME%\gradle\wrapper\gradle-wrapper.jar
+set CLASSPATH=
@rem Execute Gradle
-"%JAVA_EXE%" %DEFAULT_JVM_OPTS% %JAVA_OPTS% %GRADLE_OPTS% "-Dorg.gradle.appname=%APP_BASE_NAME%" -classpath "%CLASSPATH%" org.gradle.wrapper.GradleWrapperMain %*
+"%JAVA_EXE%" %DEFAULT_JVM_OPTS% %JAVA_OPTS% %GRADLE_OPTS% "-Dorg.gradle.appname=%APP_BASE_NAME%" -classpath "%CLASSPATH%" -jar "%APP_HOME%\gradle\wrapper\gradle-wrapper.jar" %*
:end
@rem End local scope for the variables with windows NT shell
diff --git a/graalpy/graalpy-scripts-debug-guide/pom.xml b/graalpy/graalpy-scripts-debug-guide/pom.xml
index a8030a32..eb4e1447 100644
--- a/graalpy/graalpy-scripts-debug-guide/pom.xml
+++ b/graalpy/graalpy-scripts-debug-guide/pom.xml
@@ -19,18 +19,18 @@
org.graalvm.polyglot
python
- 24.2.2
+ 25.0.0
pom
org.graalvm.polyglot
polyglot
- 24.2.2
+ 25.0.0
org.graalvm.tools
dap-tool
- 24.2.2
+ 25.0.0
diff --git a/graalpy/graalpy-spring-boot-guide/README.md b/graalpy/graalpy-spring-boot-guide/README.md
index d3a0506e..d6511eb2 100644
--- a/graalpy/graalpy-spring-boot-guide/README.md
+++ b/graalpy/graalpy-spring-boot-guide/README.md
@@ -64,13 +64,13 @@ dependencies automatically.
org.graalvm.python
python
- 24.2.2
+ 25.0.0
pom
org.graalvm.python
python-embedding
- 24.2.2
+ 25.0.0
```
@@ -93,7 +93,7 @@ Add the `graalpy-maven-plugin` configuration into the plugins section of the POM
org.graalvm.python
graalpy-maven-plugin
- 24.2.2
+ 25.0.0
vader-sentiment==3.2.1.1
@@ -113,7 +113,7 @@ Add the `graalpy-maven-plugin` configuration into the plugins section of the POM
`build.gradle`
```
plugins {
- id 'org.graalvm.python' version '24.2.2'
+ id 'org.graalvm.python' version '25.0.0'
// ...
```
diff --git a/graalpy/graalpy-spring-boot-guide/build.gradle b/graalpy/graalpy-spring-boot-guide/build.gradle
index 2dc67472..aae36332 100644
--- a/graalpy/graalpy-spring-boot-guide/build.gradle
+++ b/graalpy/graalpy-spring-boot-guide/build.gradle
@@ -1,5 +1,5 @@
plugins {
- id 'org.graalvm.python' version '24.2.2'
+ id 'org.graalvm.python' version '25.0.0'
// ...
id 'java'
id 'org.springframework.boot' version '3.3.5'
@@ -19,7 +19,7 @@ version = '0.0.1-SNAPSHOT'
java {
toolchain {
- languageVersion = JavaLanguageVersion.of(17)
+ languageVersion = JavaLanguageVersion.of(21)
}
}
diff --git a/graalpy/graalpy-spring-boot-guide/gradle/wrapper/gradle-wrapper.jar b/graalpy/graalpy-spring-boot-guide/gradle/wrapper/gradle-wrapper.jar
index a4b76b95..8bdaf60c 100644
Binary files a/graalpy/graalpy-spring-boot-guide/gradle/wrapper/gradle-wrapper.jar and b/graalpy/graalpy-spring-boot-guide/gradle/wrapper/gradle-wrapper.jar differ
diff --git a/graalpy/graalpy-spring-boot-guide/gradle/wrapper/gradle-wrapper.properties b/graalpy/graalpy-spring-boot-guide/gradle/wrapper/gradle-wrapper.properties
index df97d72b..2a84e188 100644
--- a/graalpy/graalpy-spring-boot-guide/gradle/wrapper/gradle-wrapper.properties
+++ b/graalpy/graalpy-spring-boot-guide/gradle/wrapper/gradle-wrapper.properties
@@ -1,6 +1,6 @@
distributionBase=GRADLE_USER_HOME
distributionPath=wrapper/dists
-distributionUrl=https\://services.gradle.org/distributions/gradle-8.10.2-bin.zip
+distributionUrl=https\://services.gradle.org/distributions/gradle-9.0.0-bin.zip
networkTimeout=10000
validateDistributionUrl=true
zipStoreBase=GRADLE_USER_HOME
diff --git a/graalpy/graalpy-spring-boot-guide/gradlew b/graalpy/graalpy-spring-boot-guide/gradlew
index f5feea6d..ef07e016 100755
--- a/graalpy/graalpy-spring-boot-guide/gradlew
+++ b/graalpy/graalpy-spring-boot-guide/gradlew
@@ -1,7 +1,7 @@
#!/bin/sh
#
-# Copyright © 2015-2021 the original authors.
+# Copyright © 2015 the original authors.
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
@@ -86,8 +86,7 @@ done
# shellcheck disable=SC2034
APP_BASE_NAME=${0##*/}
# Discard cd standard output in case $CDPATH is set (https://github.com/gradle/gradle/issues/25036)
-APP_HOME=$( cd -P "${APP_HOME:-./}" > /dev/null && printf '%s
-' "$PWD" ) || exit
+APP_HOME=$( cd -P "${APP_HOME:-./}" > /dev/null && printf '%s\n' "$PWD" ) || exit
# Use the maximum available, or set MAX_FD != -1 to use that value.
MAX_FD=maximum
@@ -115,7 +114,7 @@ case "$( uname )" in #(
NONSTOP* ) nonstop=true ;;
esac
-CLASSPATH=$APP_HOME/gradle/wrapper/gradle-wrapper.jar
+CLASSPATH="\\\"\\\""
# Determine the Java command to use to start the JVM.
@@ -206,7 +205,7 @@ fi
DEFAULT_JVM_OPTS='"-Xmx64m" "-Xms64m"'
# Collect all arguments for the java command:
-# * DEFAULT_JVM_OPTS, JAVA_OPTS, JAVA_OPTS, and optsEnvironmentVar are not allowed to contain shell fragments,
+# * DEFAULT_JVM_OPTS, JAVA_OPTS, and optsEnvironmentVar are not allowed to contain shell fragments,
# and any embedded shellness will be escaped.
# * For example: A user cannot expect ${Hostname} to be expanded, as it is an environment variable and will be
# treated as '${Hostname}' itself on the command line.
@@ -214,7 +213,7 @@ DEFAULT_JVM_OPTS='"-Xmx64m" "-Xms64m"'
set -- \
"-Dorg.gradle.appname=$APP_BASE_NAME" \
-classpath "$CLASSPATH" \
- org.gradle.wrapper.GradleWrapperMain \
+ -jar "$APP_HOME/gradle/wrapper/gradle-wrapper.jar" \
"$@"
# Stop when "xargs" is not available.
diff --git a/graalpy/graalpy-spring-boot-guide/gradlew.bat b/graalpy/graalpy-spring-boot-guide/gradlew.bat
index 9b42019c..5eed7ee8 100644
--- a/graalpy/graalpy-spring-boot-guide/gradlew.bat
+++ b/graalpy/graalpy-spring-boot-guide/gradlew.bat
@@ -70,11 +70,11 @@ goto fail
:execute
@rem Setup the command line
-set CLASSPATH=%APP_HOME%\gradle\wrapper\gradle-wrapper.jar
+set CLASSPATH=
@rem Execute Gradle
-"%JAVA_EXE%" %DEFAULT_JVM_OPTS% %JAVA_OPTS% %GRADLE_OPTS% "-Dorg.gradle.appname=%APP_BASE_NAME%" -classpath "%CLASSPATH%" org.gradle.wrapper.GradleWrapperMain %*
+"%JAVA_EXE%" %DEFAULT_JVM_OPTS% %JAVA_OPTS% %GRADLE_OPTS% "-Dorg.gradle.appname=%APP_BASE_NAME%" -classpath "%CLASSPATH%" -jar "%APP_HOME%\gradle\wrapper\gradle-wrapper.jar" %*
:end
@rem End local scope for the variables with windows NT shell
diff --git a/graalpy/graalpy-spring-boot-guide/pom.xml b/graalpy/graalpy-spring-boot-guide/pom.xml
index 6a30a360..6c3df482 100644
--- a/graalpy/graalpy-spring-boot-guide/pom.xml
+++ b/graalpy/graalpy-spring-boot-guide/pom.xml
@@ -32,13 +32,13 @@
org.graalvm.python
python
- 24.2.2
+ 25.0.0
pom
org.graalvm.python
python-embedding
- 24.2.2
+ 25.0.0
@@ -63,7 +63,7 @@
org.graalvm.python
graalpy-maven-plugin
- 24.2.2
+ 25.0.0
vader-sentiment==3.2.1.1
diff --git a/graalpy/graalpy-spring-boot-pygal-charts/README.md b/graalpy/graalpy-spring-boot-pygal-charts/README.md
index dbadadfe..f3d0ea15 100644
--- a/graalpy/graalpy-spring-boot-pygal-charts/README.md
+++ b/graalpy/graalpy-spring-boot-pygal-charts/README.md
@@ -5,11 +5,11 @@ In particular, this demo shows four different approaches to interact with Pygal
## Preparation
-Install GraalVM for JDK 24 and set the value of `JAVA_HOME` accordingly.
+Install GraalVM 25 and set the value of `JAVA_HOME` accordingly.
We recommend using [SDKMAN!](https://sdkman.io/). (For other download options, see [GraalVM Downloads](https://www.graalvm.org/downloads/).)
```bash
-sdk install java 24.0.2-graal
+sdk install java 25-graal
```
## Run the Application
diff --git a/graalpy/graalpy-spring-boot-pygal-charts/pom.xml b/graalpy/graalpy-spring-boot-pygal-charts/pom.xml
index cc212546..8e09df22 100644
--- a/graalpy/graalpy-spring-boot-pygal-charts/pom.xml
+++ b/graalpy/graalpy-spring-boot-pygal-charts/pom.xml
@@ -27,7 +27,7 @@
- 24.2.2
+ 25.0.0
21
diff --git a/graalpy/graalpy-starter/README.md b/graalpy/graalpy-starter/README.md
index 11b7b84d..8af87abc 100644
--- a/graalpy/graalpy-starter/README.md
+++ b/graalpy/graalpy-starter/README.md
@@ -4,11 +4,11 @@ A minimal Java application that embeds Python code with GraalPy.
## Preparation
-Install GraalVM for JDK 24 and set the value of `JAVA_HOME` accordingly.
+Install GraalVM 25 and set the value of `JAVA_HOME` accordingly.
We recommend using [SDKMAN!](https://sdkman.io/). (For other download options, see [GraalVM Downloads](https://www.graalvm.org/downloads/).)
```bash
-sdk install java 24.0.2-graal
+sdk install java 25-graal
```
## Run the Application Using Maven
diff --git a/graalpy/graalpy-starter/build.gradle.kts b/graalpy/graalpy-starter/build.gradle.kts
index 986d532d..49ee0183 100644
--- a/graalpy/graalpy-starter/build.gradle.kts
+++ b/graalpy/graalpy-starter/build.gradle.kts
@@ -9,8 +9,8 @@ repositories {
}
dependencies {
- implementation("org.graalvm.polyglot:polyglot:24.2.2")
- implementation("org.graalvm.polyglot:python:24.2.2")
+ implementation("org.graalvm.polyglot:polyglot:25.0.0")
+ implementation("org.graalvm.polyglot:python:25.0.0")
// Use JUnit Jupiter for testing.
testImplementation("org.junit.jupiter:junit-jupiter:5.11.0")
diff --git a/graalpy/graalpy-starter/gradle/wrapper/gradle-wrapper.jar b/graalpy/graalpy-starter/gradle/wrapper/gradle-wrapper.jar
index a4b76b95..8bdaf60c 100644
Binary files a/graalpy/graalpy-starter/gradle/wrapper/gradle-wrapper.jar and b/graalpy/graalpy-starter/gradle/wrapper/gradle-wrapper.jar differ
diff --git a/graalpy/graalpy-starter/gradle/wrapper/gradle-wrapper.properties b/graalpy/graalpy-starter/gradle/wrapper/gradle-wrapper.properties
index 0aaefbca..2a84e188 100644
--- a/graalpy/graalpy-starter/gradle/wrapper/gradle-wrapper.properties
+++ b/graalpy/graalpy-starter/gradle/wrapper/gradle-wrapper.properties
@@ -1,6 +1,6 @@
distributionBase=GRADLE_USER_HOME
distributionPath=wrapper/dists
-distributionUrl=https\://services.gradle.org/distributions/gradle-8.10.1-bin.zip
+distributionUrl=https\://services.gradle.org/distributions/gradle-9.0.0-bin.zip
networkTimeout=10000
validateDistributionUrl=true
zipStoreBase=GRADLE_USER_HOME
diff --git a/graalpy/graalpy-starter/gradlew b/graalpy/graalpy-starter/gradlew
index f5feea6d..ef07e016 100755
--- a/graalpy/graalpy-starter/gradlew
+++ b/graalpy/graalpy-starter/gradlew
@@ -1,7 +1,7 @@
#!/bin/sh
#
-# Copyright © 2015-2021 the original authors.
+# Copyright © 2015 the original authors.
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
@@ -86,8 +86,7 @@ done
# shellcheck disable=SC2034
APP_BASE_NAME=${0##*/}
# Discard cd standard output in case $CDPATH is set (https://github.com/gradle/gradle/issues/25036)
-APP_HOME=$( cd -P "${APP_HOME:-./}" > /dev/null && printf '%s
-' "$PWD" ) || exit
+APP_HOME=$( cd -P "${APP_HOME:-./}" > /dev/null && printf '%s\n' "$PWD" ) || exit
# Use the maximum available, or set MAX_FD != -1 to use that value.
MAX_FD=maximum
@@ -115,7 +114,7 @@ case "$( uname )" in #(
NONSTOP* ) nonstop=true ;;
esac
-CLASSPATH=$APP_HOME/gradle/wrapper/gradle-wrapper.jar
+CLASSPATH="\\\"\\\""
# Determine the Java command to use to start the JVM.
@@ -206,7 +205,7 @@ fi
DEFAULT_JVM_OPTS='"-Xmx64m" "-Xms64m"'
# Collect all arguments for the java command:
-# * DEFAULT_JVM_OPTS, JAVA_OPTS, JAVA_OPTS, and optsEnvironmentVar are not allowed to contain shell fragments,
+# * DEFAULT_JVM_OPTS, JAVA_OPTS, and optsEnvironmentVar are not allowed to contain shell fragments,
# and any embedded shellness will be escaped.
# * For example: A user cannot expect ${Hostname} to be expanded, as it is an environment variable and will be
# treated as '${Hostname}' itself on the command line.
@@ -214,7 +213,7 @@ DEFAULT_JVM_OPTS='"-Xmx64m" "-Xms64m"'
set -- \
"-Dorg.gradle.appname=$APP_BASE_NAME" \
-classpath "$CLASSPATH" \
- org.gradle.wrapper.GradleWrapperMain \
+ -jar "$APP_HOME/gradle/wrapper/gradle-wrapper.jar" \
"$@"
# Stop when "xargs" is not available.
diff --git a/graalpy/graalpy-starter/gradlew.bat b/graalpy/graalpy-starter/gradlew.bat
index 9d21a218..db3a6ac2 100644
--- a/graalpy/graalpy-starter/gradlew.bat
+++ b/graalpy/graalpy-starter/gradlew.bat
@@ -70,11 +70,11 @@ goto fail
:execute
@rem Setup the command line
-set CLASSPATH=%APP_HOME%\gradle\wrapper\gradle-wrapper.jar
+set CLASSPATH=
@rem Execute Gradle
-"%JAVA_EXE%" %DEFAULT_JVM_OPTS% %JAVA_OPTS% %GRADLE_OPTS% "-Dorg.gradle.appname=%APP_BASE_NAME%" -classpath "%CLASSPATH%" org.gradle.wrapper.GradleWrapperMain %*
+"%JAVA_EXE%" %DEFAULT_JVM_OPTS% %JAVA_OPTS% %GRADLE_OPTS% "-Dorg.gradle.appname=%APP_BASE_NAME%" -classpath "%CLASSPATH%" -jar "%APP_HOME%\gradle\wrapper\gradle-wrapper.jar" %*
:end
@rem End local scope for the variables with windows NT shell
diff --git a/graalpy/graalpy-starter/pom.xml b/graalpy/graalpy-starter/pom.xml
index 772dd769..5b6a515c 100644
--- a/graalpy/graalpy-starter/pom.xml
+++ b/graalpy/graalpy-starter/pom.xml
@@ -11,7 +11,7 @@
https://www.example.com
- 24.2.2
+ 25.0.0
UTF-8
21
diff --git a/graalwasm/graalwasm-embed-c-code-guide/README.md b/graalwasm/graalwasm-embed-c-code-guide/README.md
index d6b62d9e..f865c7ab 100644
--- a/graalwasm/graalwasm-embed-c-code-guide/README.md
+++ b/graalwasm/graalwasm-embed-c-code-guide/README.md
@@ -33,7 +33,7 @@ Add the following set of dependencies to the `` section of your pr
org.graalvm.polyglot
polyglot
- 24.2.2
+ 25.0.0
```
@@ -43,7 +43,7 @@ Add the following set of dependencies to the `` section of your pr
org.graalvm.polyglot
wasm
- 24.2.2
+ 25.0.0
pom
@@ -60,9 +60,8 @@ Put the following C program in _src/main/c/floyd.c_:
```c
#include
-void floyd() {
+void floyd(int rows) {
int number = 1;
- int rows = 10;
for (int i = 1; i <= rows; i++) {
for (int j = 1; j <= i; j++) {
printf("%d ", number);
@@ -73,9 +72,10 @@ void floyd() {
}
int main() {
- floyd();
+ floyd(10);
return 0;
}
+
```
Note that `floyd` is defined as a separate function and can be exported.
@@ -154,23 +154,28 @@ import org.graalvm.polyglot.Value;
public class App {
public static void main(String[] args) throws IOException {
- // Find the WebAssembly module resource
- URL wasmFile = App.class.getResource("floyd.wasm");
-
- // Setup context
- Context.Builder contextBuilder = Context.newBuilder("wasm").option("wasm.Builtins", "wasi_snapshot_preview1");
- Source.Builder sourceBuilder = Source.newBuilder("wasm", wasmFile).name("example");
- Source source = sourceBuilder.build();
- Context context = contextBuilder.build();
-
- // Evaluate the WebAssembly module
- context.eval(source);
-
- // Execute the floyd function
- context.getBindings("wasm").getMember("example").getMember("_initialize").executeVoid();
- Value mainFunction = context.getBindings("wasm").getMember("example").getMember("floyd");
- mainFunction.execute();
- context.close();
+ // Find the WebAssembly module resource
+ URL wasmFile = App.class.getResource("floyd.wasm");
+ Source source = Source.newBuilder("wasm", wasmFile).name("example").build();
+
+ // Create Wasm context
+ try (Context context = Context.newBuilder("wasm").option("wasm.Builtins", "wasi_snapshot_preview1").build()) {
+ // Compile and instantiate the module
+ Value module = context.eval(source);
+ Value instance = module.newInstance();
+
+ // Get the exports member from the module instance
+ Value exports = instance.getMember("exports");
+
+ // Invoke an exported functions
+ exports.invokeMember("_initialize");
+ exports.invokeMember("floyd", 10);
+
+ // Or if you need to call a function multiple times
+ Value floyd = exports.getMember("floyd");
+ floyd.execute(4);
+ floyd.execute(8);
+ }
}
}
```
@@ -181,7 +186,7 @@ Compile and run this Java application with Maven:
```shell
mvw package
-mvn exec:java -Dexec.mainClass=com.example.App
+mvn exec:exec
```
The expected output should contain the first 10 lines of [Floyd's triangle](https://en.wikipedia.org/wiki/Floyd%27s_triangle), printed using the C function:
diff --git a/graalwasm/graalwasm-embed-c-code-guide/pom.xml b/graalwasm/graalwasm-embed-c-code-guide/pom.xml
index a7510b84..df135ba5 100644
--- a/graalwasm/graalwasm-embed-c-code-guide/pom.xml
+++ b/graalwasm/graalwasm-embed-c-code-guide/pom.xml
@@ -13,6 +13,8 @@
UTF-8
21
+ --enable-native-access=ALL-UNNAMED
+ --sun-misc-unsafe-memory-access=allow
@@ -31,12 +33,12 @@
org.graalvm.polyglot
polyglot
- 24.2.2
+ 25.0.0
org.graalvm.polyglot
wasm
- 24.2.2
+ 25.0.0
pom
@@ -95,13 +97,23 @@
maven-project-info-reports-plugin
3.6.1
+
+ exec-maven-plugin
+ 1.2.1
+
+
+ org.apache.maven.plugins
+ maven-surefire-plugin
+
+ ${truffle.jvm.arg1} ${truffle.jvm.arg2}
+
+
org.codehaus.mojo
exec-maven-plugin
- 1.2.1
create-output-directory
@@ -129,7 +141,14 @@
- com.example.App
+ java
+
+ -classpath
+
+ ${truffle.jvm.arg1}
+ ${truffle.jvm.arg2}
+ com.example.App
+
diff --git a/graalwasm/graalwasm-embed-c-code-guide/src/main/c/floyd.c b/graalwasm/graalwasm-embed-c-code-guide/src/main/c/floyd.c
index 45709de8..a2e4e363 100644
--- a/graalwasm/graalwasm-embed-c-code-guide/src/main/c/floyd.c
+++ b/graalwasm/graalwasm-embed-c-code-guide/src/main/c/floyd.c
@@ -1,18 +1,17 @@
- #include
+#include
- void floyd() {
- int number = 1;
- int rows = 10;
- for (int i = 1; i <= rows; i++) {
- for (int j = 1; j <= i; j++) {
- printf("%d ", number);
- ++number;
- }
- printf(".\n");
- }
- }
+void floyd(int rows) {
+ int number = 1;
+ for (int i = 1; i <= rows; i++) {
+ for (int j = 1; j <= i; j++) {
+ printf("%d ", number);
+ ++number;
+ }
+ printf(".\n");
+ }
+}
- int main() {
- floyd();
- return 0;
- }
+int main() {
+ floyd(10);
+ return 0;
+}
diff --git a/graalwasm/graalwasm-embed-c-code-guide/src/main/java/com/example/App.java b/graalwasm/graalwasm-embed-c-code-guide/src/main/java/com/example/App.java
index 5398b4f3..76909b22 100644
--- a/graalwasm/graalwasm-embed-c-code-guide/src/main/java/com/example/App.java
+++ b/graalwasm/graalwasm-embed-c-code-guide/src/main/java/com/example/App.java
@@ -17,20 +17,25 @@ public class App {
public static void main(String[] args) throws IOException {
// Find the WebAssembly module resource
URL wasmFile = App.class.getResource("floyd.wasm");
+ Source source = Source.newBuilder("wasm", wasmFile).name("example").build();
- // Setup context
- Context.Builder contextBuilder = Context.newBuilder("wasm").option("wasm.Builtins", "wasi_snapshot_preview1");
- Source.Builder sourceBuilder = Source.newBuilder("wasm", wasmFile).name("example");
- Source source = sourceBuilder.build();
- Context context = contextBuilder.build();
+ // Create Wasm context
+ try (Context context = Context.newBuilder("wasm").option("wasm.Builtins", "wasi_snapshot_preview1").build()) {
+ // Compile and instantiate the module
+ Value module = context.eval(source);
+ Value instance = module.newInstance();
- // Evaluate the WebAssembly module
- context.eval(source);
+ // Get the exports member from the module instance
+ Value exports = instance.getMember("exports");
- // Execute the floyd function
- context.getBindings("wasm").getMember("example").getMember("_initialize").executeVoid();
- Value mainFunction = context.getBindings("wasm").getMember("example").getMember("floyd");
- mainFunction.execute();
- context.close();
+ // Invoke an exported functions
+ exports.invokeMember("_initialize");
+ exports.invokeMember("floyd", 10);
+
+ // Or if you need to call a function multiple times
+ Value floyd = exports.getMember("floyd");
+ floyd.execute(4);
+ floyd.execute(8);
+ }
}
}
diff --git a/graalwasm/graalwasm-embed-go-code-guide/README.md b/graalwasm/graalwasm-embed-go-code-guide/README.md
index cf87fef2..532a5bbf 100644
--- a/graalwasm/graalwasm-embed-go-code-guide/README.md
+++ b/graalwasm/graalwasm-embed-go-code-guide/README.md
@@ -52,7 +52,7 @@ Be sure to add a `graal.languages.version` property with the version of GraalWas
```xml
- 24.2.2
+ 25.0.0
```
diff --git a/graalwasm/graalwasm-embed-go-code-guide/pom.xml b/graalwasm/graalwasm-embed-go-code-guide/pom.xml
index 3efba851..22d411b6 100644
--- a/graalwasm/graalwasm-embed-go-code-guide/pom.xml
+++ b/graalwasm/graalwasm-embed-go-code-guide/pom.xml
@@ -11,7 +11,7 @@
https://www.example.com
- 24.2.2
+ 25.0.0
21
UTF-8
--enable-native-access=ALL-UNNAMED
diff --git a/graalwasm/graalwasm-embed-rust-code-guide/README.md b/graalwasm/graalwasm-embed-rust-code-guide/README.md
index f9e57faa..0a58794e 100644
--- a/graalwasm/graalwasm-embed-rust-code-guide/README.md
+++ b/graalwasm/graalwasm-embed-rust-code-guide/README.md
@@ -51,7 +51,7 @@ Be sure to add a `graal.languages.version` property with the version of GraalWas
```xml
- 24.2.2
+ 25.0.0
```
diff --git a/graalwasm/graalwasm-embed-rust-code-guide/pom.xml b/graalwasm/graalwasm-embed-rust-code-guide/pom.xml
index 486148e8..53a159d2 100644
--- a/graalwasm/graalwasm-embed-rust-code-guide/pom.xml
+++ b/graalwasm/graalwasm-embed-rust-code-guide/pom.xml
@@ -10,7 +10,7 @@
demo
- 24.2.2
+ 25.0.0
21
UTF-8
--enable-native-access=ALL-UNNAMED
diff --git a/graalwasm/graalwasm-micronaut-photon/README.md b/graalwasm/graalwasm-micronaut-photon/README.md
index 0af31d9a..7ac2b6fa 100644
--- a/graalwasm/graalwasm-micronaut-photon/README.md
+++ b/graalwasm/graalwasm-micronaut-photon/README.md
@@ -5,11 +5,11 @@ The demo also uses GraalJS to access the Photon module through the WebAssembly J
## Preparation
-Install GraalVM for JDK 24 and set the value of `JAVA_HOME` accordingly.
+Install GraalVM 25 and set the value of `JAVA_HOME` accordingly.
We recommend using [SDKMAN!](https://sdkman.io/). (For other download options, see [GraalVM Downloads](https://www.graalvm.org/downloads/).)
```bash
-sdk install java 24.0.2-graal
+sdk install java 25-graal
```
## Run the Application
diff --git a/graalwasm/graalwasm-micronaut-photon/pom.xml b/graalwasm/graalwasm-micronaut-photon/pom.xml
index ca074e31..1bd9963a 100644
--- a/graalwasm/graalwasm-micronaut-photon/pom.xml
+++ b/graalwasm/graalwasm-micronaut-photon/pom.xml
@@ -13,7 +13,7 @@
4.8.2
- 24.2.2
+ 25.0.0
jar
24
24
diff --git a/graalwasm/graalwasm-spring-boot-photon/README.md b/graalwasm/graalwasm-spring-boot-photon/README.md
index 02442c34..b32799c4 100644
--- a/graalwasm/graalwasm-spring-boot-photon/README.md
+++ b/graalwasm/graalwasm-spring-boot-photon/README.md
@@ -5,11 +5,11 @@ The demo also uses GraalJS to access the Photon module through the WebAssembly J
## Preparation
-Install GraalVM for JDK 24 and set the value of `JAVA_HOME` accordingly.
+Install GraalVM 25 and set the value of `JAVA_HOME` accordingly.
We recommend using [SDKMAN!](https://sdkman.io/). (For other download options, see [GraalVM Downloads](https://www.graalvm.org/downloads/).)
```bash
-sdk install java 24.0.2-graal
+sdk install java 25-graal
```
## Run the Application
diff --git a/graalwasm/graalwasm-spring-boot-photon/pom.xml b/graalwasm/graalwasm-spring-boot-photon/pom.xml
index 5a9dd1d2..c14f6df1 100644
--- a/graalwasm/graalwasm-spring-boot-photon/pom.xml
+++ b/graalwasm/graalwasm-spring-boot-photon/pom.xml
@@ -27,7 +27,7 @@
- 24.2.2
+ 25.0.0
21
diff --git a/graalwasm/graalwasm-starter/README.md b/graalwasm/graalwasm-starter/README.md
index f9251e3c..9d200541 100644
--- a/graalwasm/graalwasm-starter/README.md
+++ b/graalwasm/graalwasm-starter/README.md
@@ -4,11 +4,11 @@ A minimal Java application that embeds a WebAssembly module with GraalWasm.
## Preparation
-Install GraalVM for JDK 24 and set the value of `JAVA_HOME` accordingly.
+Install GraalVM 25 and set the value of `JAVA_HOME` accordingly.
We recommend using [SDKMAN!](https://sdkman.io/). (For other download options, see [GraalVM Downloads](https://www.graalvm.org/downloads/).)
```bash
-sdk install java 24.0.2-graal
+sdk install java 25-graal
```
## Run the Application Using Maven
@@ -22,7 +22,7 @@ To build and test the demo, run:
To execute the main method, run:
```bash
-./mvnw exec:java
+./mvnw exec:exec
```
## Run the Application Using Gradle
diff --git a/graalwasm/graalwasm-starter/build.gradle.kts b/graalwasm/graalwasm-starter/build.gradle.kts
index 05a6bddc..b893cf95 100644
--- a/graalwasm/graalwasm-starter/build.gradle.kts
+++ b/graalwasm/graalwasm-starter/build.gradle.kts
@@ -9,8 +9,8 @@ repositories {
}
dependencies {
- implementation("org.graalvm.polyglot:polyglot:24.2.2")
- implementation("org.graalvm.polyglot:wasm:24.2.2")
+ implementation("org.graalvm.polyglot:polyglot:25.0.0")
+ implementation("org.graalvm.polyglot:wasm:25.0.0")
// Use JUnit Jupiter for testing.
testImplementation("org.junit.jupiter:junit-jupiter:5.11.0")
@@ -23,7 +23,14 @@ application {
mainClass = "com.example.App"
}
+val truffleJvmArgs = listOf("--enable-native-access=ALL-UNNAMED", "--sun-misc-unsafe-memory-access=allow")
+
+tasks.named("run") {
+ jvmArgs = truffleJvmArgs
+}
+
tasks.named("test") {
+ jvmArgs = truffleJvmArgs
// Use JUnit Platform for unit tests.
useJUnitPlatform()
}
diff --git a/graalwasm/graalwasm-starter/gradle/wrapper/gradle-wrapper.jar b/graalwasm/graalwasm-starter/gradle/wrapper/gradle-wrapper.jar
index a4b76b95..8bdaf60c 100644
Binary files a/graalwasm/graalwasm-starter/gradle/wrapper/gradle-wrapper.jar and b/graalwasm/graalwasm-starter/gradle/wrapper/gradle-wrapper.jar differ
diff --git a/graalwasm/graalwasm-starter/gradle/wrapper/gradle-wrapper.properties b/graalwasm/graalwasm-starter/gradle/wrapper/gradle-wrapper.properties
index 0aaefbca..2a84e188 100644
--- a/graalwasm/graalwasm-starter/gradle/wrapper/gradle-wrapper.properties
+++ b/graalwasm/graalwasm-starter/gradle/wrapper/gradle-wrapper.properties
@@ -1,6 +1,6 @@
distributionBase=GRADLE_USER_HOME
distributionPath=wrapper/dists
-distributionUrl=https\://services.gradle.org/distributions/gradle-8.10.1-bin.zip
+distributionUrl=https\://services.gradle.org/distributions/gradle-9.0.0-bin.zip
networkTimeout=10000
validateDistributionUrl=true
zipStoreBase=GRADLE_USER_HOME
diff --git a/graalwasm/graalwasm-starter/gradlew b/graalwasm/graalwasm-starter/gradlew
index f5feea6d..ef07e016 100755
--- a/graalwasm/graalwasm-starter/gradlew
+++ b/graalwasm/graalwasm-starter/gradlew
@@ -1,7 +1,7 @@
#!/bin/sh
#
-# Copyright © 2015-2021 the original authors.
+# Copyright © 2015 the original authors.
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
@@ -86,8 +86,7 @@ done
# shellcheck disable=SC2034
APP_BASE_NAME=${0##*/}
# Discard cd standard output in case $CDPATH is set (https://github.com/gradle/gradle/issues/25036)
-APP_HOME=$( cd -P "${APP_HOME:-./}" > /dev/null && printf '%s
-' "$PWD" ) || exit
+APP_HOME=$( cd -P "${APP_HOME:-./}" > /dev/null && printf '%s\n' "$PWD" ) || exit
# Use the maximum available, or set MAX_FD != -1 to use that value.
MAX_FD=maximum
@@ -115,7 +114,7 @@ case "$( uname )" in #(
NONSTOP* ) nonstop=true ;;
esac
-CLASSPATH=$APP_HOME/gradle/wrapper/gradle-wrapper.jar
+CLASSPATH="\\\"\\\""
# Determine the Java command to use to start the JVM.
@@ -206,7 +205,7 @@ fi
DEFAULT_JVM_OPTS='"-Xmx64m" "-Xms64m"'
# Collect all arguments for the java command:
-# * DEFAULT_JVM_OPTS, JAVA_OPTS, JAVA_OPTS, and optsEnvironmentVar are not allowed to contain shell fragments,
+# * DEFAULT_JVM_OPTS, JAVA_OPTS, and optsEnvironmentVar are not allowed to contain shell fragments,
# and any embedded shellness will be escaped.
# * For example: A user cannot expect ${Hostname} to be expanded, as it is an environment variable and will be
# treated as '${Hostname}' itself on the command line.
@@ -214,7 +213,7 @@ DEFAULT_JVM_OPTS='"-Xmx64m" "-Xms64m"'
set -- \
"-Dorg.gradle.appname=$APP_BASE_NAME" \
-classpath "$CLASSPATH" \
- org.gradle.wrapper.GradleWrapperMain \
+ -jar "$APP_HOME/gradle/wrapper/gradle-wrapper.jar" \
"$@"
# Stop when "xargs" is not available.
diff --git a/graalwasm/graalwasm-starter/gradlew.bat b/graalwasm/graalwasm-starter/gradlew.bat
index 9d21a218..db3a6ac2 100644
--- a/graalwasm/graalwasm-starter/gradlew.bat
+++ b/graalwasm/graalwasm-starter/gradlew.bat
@@ -70,11 +70,11 @@ goto fail
:execute
@rem Setup the command line
-set CLASSPATH=%APP_HOME%\gradle\wrapper\gradle-wrapper.jar
+set CLASSPATH=
@rem Execute Gradle
-"%JAVA_EXE%" %DEFAULT_JVM_OPTS% %JAVA_OPTS% %GRADLE_OPTS% "-Dorg.gradle.appname=%APP_BASE_NAME%" -classpath "%CLASSPATH%" org.gradle.wrapper.GradleWrapperMain %*
+"%JAVA_EXE%" %DEFAULT_JVM_OPTS% %JAVA_OPTS% %GRADLE_OPTS% "-Dorg.gradle.appname=%APP_BASE_NAME%" -classpath "%CLASSPATH%" -jar "%APP_HOME%\gradle\wrapper\gradle-wrapper.jar" %*
:end
@rem End local scope for the variables with windows NT shell
diff --git a/graalwasm/graalwasm-starter/pom.xml b/graalwasm/graalwasm-starter/pom.xml
index d9dd741f..721b5bb5 100644
--- a/graalwasm/graalwasm-starter/pom.xml
+++ b/graalwasm/graalwasm-starter/pom.xml
@@ -1,116 +1,145 @@
- 4.0.0
+ xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
+ 4.0.0
- com.example
- demo
- 1.0-SNAPSHOT
+ com.example
+ demo
+ 1.0-SNAPSHOT
- demo
- https://www.example.com
+ demo
+ https://www.example.com
-
- UTF-8
- 17
-
+
+ UTF-8
+ 17
+ --enable-native-access=ALL-UNNAMED
+ --sun-misc-unsafe-memory-access=allow
+
-
-
-
- org.junit
- junit-bom
- 5.11.0
- pom
- import
-
-
-
+
+
+
+ org.junit
+ junit-bom
+ 5.11.0
+ pom
+ import
+
+
+
-
-
- org.graalvm.polyglot
- polyglot
- 24.2.2
-
-
- org.graalvm.polyglot
- wasm
- 24.2.2
- pom
-
+
+
+ org.graalvm.polyglot
+ polyglot
+ 25.0.0
+
+
+ org.graalvm.polyglot
+ wasm
+ 25.0.0
+ pom
+
-
- org.junit.jupiter
- junit-jupiter-api
- test
-
-
-
- org.junit.jupiter
- junit-jupiter-params
- test
-
-
+
+ org.junit.jupiter
+ junit-jupiter-api
+ test
+
+
+
+ org.junit.jupiter
+ junit-jupiter-params
+ test
+
+
-
-
-
-
-
- maven-clean-plugin
- 3.4.0
-
-
-
- maven-resources-plugin
- 3.3.1
-
-
- maven-compiler-plugin
- 3.13.0
-
-
- maven-surefire-plugin
- 3.3.0
-
-
- org.codehaus.mojo
- exec-maven-plugin
- 1.2.1
-
-
-
- java
-
-
-
-
- com.example.App
-
-
-
- maven-jar-plugin
- 3.4.2
-
-
- maven-install-plugin
- 3.1.2
-
-
- maven-deploy-plugin
- 3.1.2
-
-
-
- maven-site-plugin
- 3.12.1
-
-
- maven-project-info-reports-plugin
- 3.6.1
-
-
-
-
+
+
+
+
+
+ maven-clean-plugin
+ 3.4.0
+
+
+
+ maven-resources-plugin
+ 3.3.1
+
+
+ maven-compiler-plugin
+ 3.13.0
+
+
+ maven-surefire-plugin
+ 3.3.0
+
+
+ org.codehaus.mojo
+ exec-maven-plugin
+ 1.2.1
+
+
+
+ java
+
+
+
+
+ com.example.App
+
+
+
+ maven-jar-plugin
+ 3.4.2
+
+
+ maven-install-plugin
+ 3.1.2
+
+
+ maven-deploy-plugin
+ 3.1.2
+
+
+
+ maven-site-plugin
+ 3.12.1
+
+
+ maven-project-info-reports-plugin
+ 3.6.1
+
+
+ exec-maven-plugin
+ 1.2.1
+
+
+
+
+
+ org.apache.maven.plugins
+ maven-surefire-plugin
+
+ ${truffle.jvm.arg1} ${truffle.jvm.arg2}
+
+
+
+ org.codehaus.mojo
+ exec-maven-plugin
+
+ java
+
+ -classpath
+
+ ${truffle.jvm.arg1}
+ ${truffle.jvm.arg2}
+ com.example.App
+
+
+
+
+
diff --git a/graalwasm/graalwasm-starter/src/main/java/com/example/App.java b/graalwasm/graalwasm-starter/src/main/java/com/example/App.java
index 7eaac2dd..2121b7a1 100644
--- a/graalwasm/graalwasm-starter/src/main/java/com/example/App.java
+++ b/graalwasm/graalwasm-starter/src/main/java/com/example/App.java
@@ -18,9 +18,9 @@ public class App {
public static void main(String[] args) throws IOException {
try (Context context = Context.create()) {
URL wasmFile = App.class.getResource("add-two.wasm");
- String moduleName = "main";
- context.eval(Source.newBuilder("wasm", wasmFile).name(moduleName).build());
- Value addTwo = context.getBindings("wasm").getMember(moduleName).getMember("addTwo");
+ Value mainModule = context.eval(Source.newBuilder("wasm", wasmFile).build());
+ Value mainInstance = mainModule.newInstance();
+ Value addTwo = mainInstance.getMember("exports").getMember("addTwo");
System.out.println("addTwo(40, 2) = " + addTwo.execute(40, 2));
}
}