Skip to content

Commit d93ed9a

Browse files
Fix java 21 build (#1925)
* Update common files * fix build for Java 21 --------- Co-authored-by: micronaut-build <[email protected]>
1 parent 0f6deb7 commit d93ed9a

File tree

9 files changed

+51
-17
lines changed

9 files changed

+51
-17
lines changed

.editorconfig

+3
Original file line numberDiff line numberDiff line change
@@ -12,6 +12,9 @@ end_of_line = lf
1212
[{*.bat,*.cmd}]
1313
end_of_line = crlf
1414

15+
[{*.mustache,*.ftl}]
16+
insert_final_newline = false
17+
1518
[*.java]
1619
indent_size = 4
1720
tab_width = 4

.github/workflows/graalvm-latest.yml

+5-3
Original file line numberDiff line numberDiff line change
@@ -34,7 +34,9 @@ jobs:
3434
runs-on: ubuntu-latest
3535
strategy:
3636
max-parallel: 6
37-
matrix: ${{ fromJson(needs.build_matrix.outputs.matrix) }}
37+
matrix:
38+
java: ['17', '21']
39+
native_test_task: ${{ fromJson(needs.build_matrix.outputs.matrix).native_test_task }}
3840
env:
3941
GRADLE_ENTERPRISE_ACCESS_KEY: ${{ secrets.GRADLE_ENTERPRISE_ACCESS_KEY }}
4042
GRADLE_ENTERPRISE_CACHE_USERNAME: ${{ secrets.GRADLE_ENTERPRISE_CACHE_USERNAME }}
@@ -46,7 +48,7 @@ jobs:
4648
id: pre-build
4749
with:
4850
distribution: 'graalvm'
49-
java: '17'
51+
java: ${{ matrix.java }}
5052
- name: Build Steps
5153
uses: micronaut-projects/github-actions/graalvm/build@master
5254
id: build
@@ -60,4 +62,4 @@ jobs:
6062
uses: micronaut-projects/github-actions/graalvm/post-build@master
6163
id: post-build
6264
with:
63-
java: '17'
65+
java: ${{ matrix.java }}

.github/workflows/gradle.yml

+2-2
Original file line numberDiff line numberDiff line change
@@ -19,7 +19,7 @@ jobs:
1919
runs-on: ubuntu-latest
2020
strategy:
2121
matrix:
22-
java: ['17']
22+
java: ['17', '21']
2323
env:
2424
GRADLE_ENTERPRISE_ACCESS_KEY: ${{ secrets.GRADLE_ENTERPRISE_ACCESS_KEY }}
2525
GRADLE_ENTERPRISE_CACHE_USERNAME: ${{ secrets.GRADLE_ENTERPRISE_CACHE_USERNAME }}
@@ -64,7 +64,7 @@ jobs:
6464
./gradlew check --no-daemon --continue
6565
6666
- name: "🔎 Run static analysis"
67-
if: env.SONAR_TOKEN != ''
67+
if: env.SONAR_TOKEN != '' && matrix.java == '17'
6868
run: |
6969
./gradlew sonar
7070

gradle.properties

+13
Original file line numberDiff line numberDiff line change
@@ -11,3 +11,16 @@ developers=Graeme Rocher
1111
org.gradle.caching=true
1212
# For sonarqube
1313
org.gradle.jvmargs=-XX:MaxMetaspaceSize=1g
14+
15+
# No matter which Java toolchain we use, the Kotlin Daemon is always invoked by the current JDK.
16+
# Therefor to fix Kapt errors when running tests under Java 21, we need to open up some modules for the Kotlin Daemon.
17+
kotlin.daemon.jvmargs=--add-opens=jdk.compiler/com.sun.tools.javac.api=ALL-UNNAMED\
18+
--add-opens=jdk.compiler/com.sun.tools.javac.code=ALL-UNNAMED \
19+
--add-opens=jdk.compiler/com.sun.tools.javac.comp=ALL-UNNAMED \
20+
--add-opens=jdk.compiler/com.sun.tools.javac.file=ALL-UNNAMED \
21+
--add-opens=jdk.compiler/com.sun.tools.javac.jvm=ALL-UNNAMED \
22+
--add-opens=jdk.compiler/com.sun.tools.javac.main=ALL-UNNAMED \
23+
--add-opens=jdk.compiler/com.sun.tools.javac.parser=ALL-UNNAMED \
24+
--add-opens=jdk.compiler/com.sun.tools.javac.processing=ALL-UNNAMED \
25+
--add-opens=jdk.compiler/com.sun.tools.javac.tree=ALL-UNNAMED \
26+
--add-opens=jdk.compiler/com.sun.tools.javac.util=ALL-UNNAMED

gradle/libs.versions.toml

+1-2
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@ micronaut = "4.1.9"
33
micronaut-docs = "2.0.0"
44
micronaut-test = "4.0.2"
55
micronaut-testresources = "2.0.0"
6-
groovy = "4.0.13"
6+
groovy = "4.0.15"
77
spock = "2.3-groovy-4.0"
88

99
bouncycastle = '1.70'
@@ -53,7 +53,6 @@ micronaut-gradle-plugin = "4.1.1"
5353
javapoet = { module = "com.squareup:javapoet", version.ref = "javapoet" }
5454

5555
micronaut-core = { module = 'io.micronaut:micronaut-core-bom', version.ref = 'micronaut' }
56-
micronaut-logging = { module = "io.micronaut.discovery:micronaut-logging-bom", version.ref = "micronaut-logging" }
5756
micronaut-discovery-client = { module = "io.micronaut.discovery:micronaut-discovery-client-bom", version.ref = "micronaut-discovery" }
5857
micronaut-groovy = { module = "io.micronaut.groovy:micronaut-groovy-bom", version.ref = "micronaut-groovy" }
5958
micronaut-mongodb = { module = "io.micronaut.mongodb:micronaut-mongo-bom", version.ref = "micronaut-mongodb" }

settings.gradle.kts

+1-1
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@ pluginManagement {
66
}
77

88
plugins {
9-
id("io.micronaut.build.shared.settings") version "6.5.7"
9+
id("io.micronaut.build.shared.settings") version "6.6.0"
1010
}
1111

1212
enableFeaturePreview("TYPESAFE_PROJECT_ACCESSORS")
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,20 @@
11
plugins {
22
id("java-library")
3+
id("io.micronaut.build.internal.common")
34
}
45
dependencies {
56
api(libs.aws.lambda.java.runtimeinterfaceclient)
67
api(libs.managed.aws.lambda.events)
78
implementation(mnTest.micronaut.test.junit5)
89
implementation(projects.micronautFunctionAws)
910
}
11+
12+
spotless {
13+
java {
14+
targetExclude("**/lambda/events/**")
15+
}
16+
}
17+
18+
tasks.withType<Checkstyle> {
19+
enabled = false
20+
}

test-suite-kotlin/build.gradle.kts

+4-9
Original file line numberDiff line numberDiff line change
@@ -22,16 +22,11 @@ tasks {
2222
named("test", Test::class) {
2323
useJUnitPlatform()
2424
}
25+
}
2526

26-
named("compileTestKotlin", org.jetbrains.kotlin.gradle.tasks.KotlinCompile::class) {
27-
kotlinOptions {
28-
jvmTarget = "17"
29-
javaParameters = true
30-
}
27+
kotlin {
28+
jvmToolchain {
29+
languageVersion.set(JavaLanguageVersion.of(17))
3130
}
32-
}
3331

34-
java {
35-
sourceCompatibility = JavaVersion.toVersion("17")
36-
targetCompatibility = JavaVersion.toVersion("17")
3732
}

test-suite/build.gradle.kts

+11
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,7 @@
11
plugins {
22
id("java-library")
33
id("io.micronaut.build.internal.aws-tests-java")
4+
id("io.micronaut.build.internal.common")
45
}
56
dependencies {
67
testImplementation(projects.micronautFunctionAws)
@@ -16,3 +17,13 @@ tasks {
1617
systemProperty("aws.region", "us-east-1")
1718
}
1819
}
20+
21+
spotless {
22+
java {
23+
targetExclude("**/docs/**")
24+
}
25+
}
26+
27+
tasks.withType<Checkstyle> {
28+
enabled = false
29+
}

0 commit comments

Comments
 (0)