Skip to content

Commit c0f99b6

Browse files
committed
build(core): migrate to java 25
Changes: * update build dependencies * migrate to graalvm reachability-metadata * update micronaut version * update github workflows * refactor and cleanup pom.xml files
1 parent a8e0eaa commit c0f99b6

File tree

43 files changed

+1051
-1622
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

43 files changed

+1051
-1622
lines changed

.github/workflows/codeql.yml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -21,9 +21,9 @@ on:
2121
- cron: '17 20 * * 3'
2222

2323
env:
24-
JAVA_VERSION: '21'
24+
JAVA_VERSION: '25'
2525
JAVA_DISTRO: 'zulu'
26-
GRAAL_VERSION: '23.1.0'
26+
GRAAL_VERSION: '25.0.1'
2727

2828
jobs:
2929
analyze:

.github/workflows/docker-build-push.yml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -12,9 +12,9 @@ on:
1212
tags:
1313
- 'v*'
1414
env:
15-
JAVA_VERSION: '21'
15+
JAVA_VERSION: '25'
1616
JAVA_DISTRO: 'zulu'
17-
GRAAL_VERSION: '21.0.1'
17+
GRAAL_VERSION: '25.0.1'
1818
GRAAL_DISTRIBUTION: 'graalvm-community'
1919
jobs:
2020
build-cli:

.github/workflows/early-access.yml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -10,9 +10,9 @@ on:
1010
push:
1111
branches: [ main ]
1212
env:
13-
JAVA_VERSION: '21'
13+
JAVA_VERSION: '25'
1414
JAVA_DISTRO: 'zulu'
15-
GRAAL_VERSION: '21.0.1'
15+
GRAAL_VERSION: '25.0.1'
1616
GRAAL_DISTRIBUTION: 'graalvm-community'
1717
jobs:
1818
build-distribution:

.github/workflows/maven-build.yml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -12,9 +12,9 @@ on:
1212
pull_request:
1313
branches: [ main ]
1414
env:
15-
JAVA_VERSION: '21'
15+
JAVA_VERSION: '25'
1616
JAVA_DISTRO: 'zulu'
17-
GRAAL_VERSION: '21.0.1'
17+
GRAAL_VERSION: '25.0.1'
1818
GRAAL_DISTRIBUTION: 'graalvm-community'
1919
jobs:
2020
build:

.github/workflows/maven-deploy.yml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -12,9 +12,9 @@ on:
1212
tags:
1313
- 'v*'
1414
env:
15-
JAVA_VERSION: '21'
15+
JAVA_VERSION: '25'
1616
JAVA_DISTRO: 'zulu'
17-
GRAAL_VERSION: '21.0.1'
17+
GRAAL_VERSION: '25.0.1'
1818
GRAAL_DISTRIBUTION: 'graalvm-community'
1919
jobs:
2020
build:

.github/workflows/release.yml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -17,9 +17,9 @@ on:
1717
required: false
1818

1919
env:
20-
JAVA_VERSION: '21'
20+
JAVA_VERSION: '25'
2121
JAVA_DISTRO: 'zulu'
22-
GRAAL_VERSION: '21.0.1'
22+
GRAAL_VERSION: '25.0.1'
2323
GRAAL_DISTRIBUTION: 'graalvm-community'
2424
jobs:
2525
set-release-version:

cli/pom.xml

Lines changed: 38 additions & 55 deletions
Original file line numberDiff line numberDiff line change
@@ -34,15 +34,15 @@
3434
<executable-suffix/>
3535
<rpm-maven-plugin.version>2.3.0</rpm-maven-plugin.version>
3636
<!-- Micronaut -->
37-
<micronaut.version>4.7.4</micronaut.version>
38-
<micronaut.core.version>4.7.10</micronaut.core.version>
39-
<micronaut-maven-plugin.version>4.7.2</micronaut-maven-plugin.version>
40-
<micronaut-picocli-bom.version>5.7.0</micronaut-picocli-bom.version>
37+
<micronaut.version>4.10.7</micronaut.version>
38+
<micronaut.core.version>4.10.13</micronaut.core.version>
39+
<micronaut-maven-plugin.version>4.11.5</micronaut-maven-plugin.version>
40+
<micronaut-picocli-bom.version>5.9.0</micronaut-picocli-bom.version>
4141
<micronaut.aot.enabled>false</micronaut.aot.enabled>
4242
<os-maven-plugin.version>1.7.1</os-maven-plugin.version>
4343
<!-- Native -->
4444
<imageName>jikkou</imageName>
45-
<native.maven.plugin.version>0.10.6</native.maven.plugin.version>
45+
<native.maven.plugin.version>0.11.3</native.maven.plugin.version>
4646
<exec.mainClass>io.streamthoughts.jikkou.client.Jikkou</exec.mainClass>
4747
</properties>
4848

@@ -70,6 +70,14 @@
7070
<type>pom</type>
7171
<scope>import</scope>
7272
</dependency>
73+
<!-- JUnit BOM - must be after Micronaut to override its JUnit versions -->
74+
<dependency>
75+
<groupId>org.junit</groupId>
76+
<artifactId>junit-bom</artifactId>
77+
<version>${junit-bom.version}</version>
78+
<type>pom</type>
79+
<scope>import</scope>
80+
</dependency>
7381
</dependencies>
7482
</dependencyManagement>
7583

@@ -126,10 +134,7 @@
126134
<version>${project.version}</version>
127135
</dependency>
128136
<!-- END dependencies for Jikkou Extension Providers -->
129-
<dependency>
130-
<groupId>ch.qos.logback</groupId>
131-
<artifactId>logback-classic</artifactId>
132-
</dependency>
137+
133138
<!-- START dependencies for Micronaut/Picocli -->
134139
<dependency>
135140
<groupId>io.micronaut</groupId>
@@ -181,41 +186,6 @@
181186
</dependency>
182187

183188
<!-- START dependencies for test -->
184-
<dependency>
185-
<groupId>org.mockito</groupId>
186-
<artifactId>mockito-core</artifactId>
187-
<scope>test</scope>
188-
</dependency>
189-
<dependency>
190-
<groupId>org.testcontainers</groupId>
191-
<artifactId>testcontainers</artifactId>
192-
<scope>test</scope>
193-
</dependency>
194-
<dependency>
195-
<groupId>org.testcontainers</groupId>
196-
<artifactId>junit-jupiter</artifactId>
197-
<scope>test</scope>
198-
</dependency>
199-
<dependency>
200-
<groupId>org.junit.jupiter</groupId>
201-
<artifactId>junit-jupiter-api</artifactId>
202-
<scope>test</scope>
203-
</dependency>
204-
<dependency>
205-
<groupId>org.junit.jupiter</groupId>
206-
<artifactId>junit-jupiter-engine</artifactId>
207-
<scope>test</scope>
208-
</dependency>
209-
<dependency>
210-
<groupId>org.junit.jupiter</groupId>
211-
<artifactId>junit-jupiter-params</artifactId>
212-
<scope>test</scope>
213-
</dependency>
214-
<dependency>
215-
<groupId>org.junit.vintage</groupId>
216-
<artifactId>junit-vintage-engine</artifactId>
217-
<scope>test</scope>
218-
</dependency>
219189
<dependency>
220190
<groupId>io.micronaut.test</groupId>
221191
<artifactId>micronaut-test-junit5</artifactId>
@@ -246,8 +216,8 @@
246216
<version>${micronaut-maven-plugin.version}</version>
247217
<extensions>true</extensions>
248218
<configuration>
249-
<micronautAotVersion>2.0.1</micronautAotVersion>
250-
<testResourcesVersion>1.2.5</testResourcesVersion>
219+
<micronautAotVersion>2.9.0</micronautAotVersion>
220+
<testResourcesVersion>2.10.1</testResourcesVersion>
251221
</configuration>
252222
</plugin>
253223
<plugin>
@@ -346,6 +316,10 @@
346316
<artifactId>native-maven-plugin</artifactId>
347317
<version>${native.maven.plugin.version}</version>
348318
<extensions>true</extensions>
319+
<configuration>
320+
<!-- Skip native tests - JUnit should not be part of production native image -->
321+
<skipNativeTests>true</skipNativeTests>
322+
</configuration>
349323
<executions>
350324
<execution>
351325
<id>build-native</id>
@@ -354,13 +328,6 @@
354328
</goals>
355329
<phase>package</phase>
356330
</execution>
357-
<execution>
358-
<id>test-native</id>
359-
<goals>
360-
<goal>test</goal>
361-
</goals>
362-
<phase>test</phase>
363-
</execution>
364331
</executions>
365332
</plugin>
366333
</plugins>
@@ -405,10 +372,18 @@
405372
-->
406373
<buildArg>--initialize-at-build-time=kotlin.coroutines.intrinsics.CoroutineSingletons</buildArg>
407374
<buildArg>--initialize-at-build-time=org.slf4j.helpers.Reporter</buildArg>
375+
<buildArg>--initialize-at-build-time=org.slf4j.helpers.NOP_FallbackServiceProvider</buildArg>
376+
<buildArg>--initialize-at-build-time=org.slf4j.helpers.SubstituteServiceProvider</buildArg>
377+
<buildArg>--initialize-at-build-time=org.slf4j.helpers.NOPLoggerFactory</buildArg>
378+
<buildArg>--initialize-at-build-time=org.slf4j.helpers.SubstituteLoggerFactory</buildArg>
379+
<buildArg>--initialize-at-build-time=org.slf4j.helpers.Reporter$TargetChoice</buildArg>
380+
<buildArg>--initialize-at-build-time=ch.qos.logback.classic.Logger</buildArg>
381+
<buildArg>--initialize-at-build-time=org.xml.sax.helpers.LocatorImpl</buildArg>
382+
<buildArg>--initialize-at-build-time=org.xml.sax.helpers.AttributesImpl</buildArg>
408383
</buildArgs>
409384
<metadataRepository>
410385
<enabled>true</enabled>
411-
<version>0.3.15</version>
386+
<version>0.3.33</version>
412387
</metadataRepository>
413388
</configuration>
414389
</plugin>
@@ -454,10 +429,18 @@
454429
-->
455430
<buildArg>--initialize-at-build-time=kotlin.coroutines.intrinsics.CoroutineSingletons</buildArg>
456431
<buildArg>--initialize-at-build-time=org.slf4j.helpers.Reporter</buildArg>
432+
<buildArg>--initialize-at-build-time=org.slf4j.helpers.NOP_FallbackServiceProvider</buildArg>
433+
<buildArg>--initialize-at-build-time=org.slf4j.helpers.SubstituteServiceProvider</buildArg>
434+
<buildArg>--initialize-at-build-time=org.slf4j.helpers.NOPLoggerFactory</buildArg>
435+
<buildArg>--initialize-at-build-time=org.slf4j.helpers.SubstituteLoggerFactory</buildArg>
436+
<buildArg>--initialize-at-build-time=org.slf4j.helpers.Reporter$TargetChoice</buildArg>
437+
<buildArg>--initialize-at-build-time=ch.qos.logback.classic.Logger</buildArg>
438+
<buildArg>--initialize-at-build-time=org.xml.sax.helpers.LocatorImpl</buildArg>
439+
<buildArg>--initialize-at-build-time=org.xml.sax.helpers.AttributesImpl</buildArg>
457440
</buildArgs>
458441
<metadataRepository>
459442
<enabled>true</enabled>
460-
<version>0.3.15</version>
443+
<version>0.3.33</version>
461444
</metadataRepository>
462445
</configuration>
463446
</plugin>
Lines changed: 36 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,36 @@
1+
{
2+
"reflection": [
3+
{
4+
"type": "java.util.HashSet",
5+
"methods": [
6+
{
7+
"name": "<init>",
8+
"parameterTypes": []
9+
}
10+
]
11+
},
12+
{
13+
"type": "java.util.ArrayList",
14+
"methods": [
15+
{
16+
"name": "<init>",
17+
"parameterTypes": []
18+
}
19+
]
20+
},
21+
{
22+
"type": "java.util.HashMap",
23+
"methods": [
24+
{
25+
"name": "<init>",
26+
"parameterTypes": []
27+
}
28+
]
29+
}
30+
],
31+
"resources": [
32+
{"glob": "reference.conf"},
33+
{"glob": "logback.xml"},
34+
{"glob": "application.yml"}
35+
]
36+
}

cli/src/main/resources/META-INF/native-image/io.streamthoughts/jikkou-cli/reflect-config.json

Lines changed: 0 additions & 29 deletions
This file was deleted.

cli/src/main/resources/META-INF/native-image/io.streamthoughts/jikkou-cli/resource-config.json

Lines changed: 0 additions & 13 deletions
This file was deleted.

0 commit comments

Comments
 (0)