Skip to content
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.

Commit 824607f

Browse files
committedMar 22, 2025·
ci: test native-image on GraalVM for JDK 24
Tests should run on LTS and latest release versions.
1 parent fb3ce17 commit 824607f

File tree

3 files changed

+45
-1
lines changed

3 files changed

+45
-1
lines changed
 

‎.github/workflows/ci.yml

+1-1
Original file line numberDiff line numberDiff line change
@@ -73,7 +73,7 @@ jobs:
7373
strategy:
7474
matrix:
7575
os: [ ubuntu-latest, windows-latest, macos-latest ]
76-
java: [ '17', '21', '22' ]
76+
java: [ '17', '21', '24' ]
7777
profiles: ['native', 'native,native-exported']
7878
runs-on: ${{ matrix.os }}
7979
steps:

‎pom.xml

+9
Original file line numberDiff line numberDiff line change
@@ -355,6 +355,15 @@
355355
<buildArgs>
356356
<!-- required to allow junit-pioneer to compile with strict image heap enabled -->
357357
<arg>--initialize-at-build-time=org.junitpioneer.jupiter.issue.IssueExtensionExecutionListener</arg>
358+
<!--
359+
Issues with JUnit support should be largely resolved by https://github.com/graalvm/native-build-tools/issues/613
360+
These are only necessary for GraalVM for JDK 22+ as this has the Strict Image Heap enabled by default,
361+
and should be removed when aforementioned issue is released in a new buildtools release.
362+
-->
363+
<arg>--initialize-at-build-time=org.junit.jupiter.engine.descriptor.ExclusiveResourceCollector$DefaultExclusiveResourceCollector</arg>
364+
<arg>--initialize-at-build-time=org.junit.jupiter.api.parallel.ResourceLock</arg>
365+
<arg>--initialize-at-build-time=org.junit.jupiter.api.parallel.ResourceLockTarget</arg>
366+
<arg>--initialize-at-build-time=org.junit.jupiter.api.parallel.ResourceAccessMode</arg>
358367
</buildArgs>
359368
</configuration>
360369
</plugin>
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,35 @@
1+
{
2+
"comment": "New reachability metadata format introduced in GraalVM for JDK 23, this merges the other *-config.json files into one: https://www.graalvm.org/latest/reference-manual/native-image/metadata/",
3+
"resources": [
4+
{
5+
"glob": "org/sqlite/*.jar"
6+
},
7+
{
8+
"glob": "org/sqlite/*.db"
9+
},
10+
{
11+
"module": "java.sql.rowset",
12+
"glob": "javax/sql/rowset/rowset.properties"
13+
}
14+
],
15+
"bundles": [
16+
{
17+
"name": "com.sun.rowset.RowSetResourceBundle"
18+
}
19+
],
20+
"reflection": [
21+
{
22+
"type": "com.sun.rowset.providers.RIOptimisticProvider",
23+
"methods": [
24+
{
25+
"name": "<init>",
26+
"parameterTypes": []
27+
}
28+
]
29+
},
30+
{
31+
"type": "java.sql.Types",
32+
"allPublicFields": true
33+
}
34+
]
35+
}

0 commit comments

Comments
 (0)
Please sign in to comment.