11plugins {
22 id ' java'
3- id ' org.springframework.boot' version ' 4.0.2 '
3+ id ' org.springframework.boot' version ' 4.0.3 '
44 id ' io.spring.dependency-management' version ' 1.1.7'
55 id " com.github.ben-manes.versions" version " 0.53.0"
66
@@ -56,10 +56,20 @@ dependencies {
5656
5757 // Thymeleaf extras - Spring Boot 4 manages the version
5858 implementation ' org.thymeleaf.extras:thymeleaf-extras-springsecurity6'
59- implementation ' nz.net.ultraq.thymeleaf:thymeleaf-layout-dialect:3.4.0'
59+ // Workaround for GROOVY-11745: Groovy 5.0.4 (shipped with Spring Boot 4.0.3) has a
60+ // regression that causes an NPE when Groovy 5 code calls setters on objects from
61+ // Groovy 4-compiled libraries. This breaks thymeleaf-layout-dialect 3.4.0 (compiled
62+ // with Groovy 4.0.25) in DecorateProcessor.doProcess().
63+ // See: https://issues.apache.org/jira/browse/GROOVY-11745
64+ // See: https://github.com/ultraq/thymeleaf-layout-dialect/issues/251
65+ // TODO: Remove this workaround when Groovy 5.0.5+ is available and adopted by Spring Boot
66+ implementation(' nz.net.ultraq.thymeleaf:thymeleaf-layout-dialect:3.4.0' ) {
67+ exclude group : ' org.apache.groovy'
68+ }
69+ implementation ' org.apache.groovy:groovy:5.0.3'
6070
6171 // OpenAPI (Swagger)
62- implementation ' org.springdoc:springdoc-openapi-starter-webmvc-ui:2.8.9 '
72+ implementation ' org.springdoc:springdoc-openapi-starter-webmvc-ui:3.0.1 '
6373
6474 // Runtime dependencies
6575 runtimeOnly ' org.springframework.boot:spring-boot-devtools'
@@ -72,8 +82,7 @@ dependencies {
7282 // Utility libraries
7383 implementation ' org.passay:passay:1.6.6'
7484 implementation ' com.google.guava:guava:33.5.0-jre'
75- implementation ' jakarta.validation:jakarta.validation-api:3.1.1'
76- implementation ' org.hibernate.validator:hibernate-validator:8.0.2.Final'
85+ implementation ' org.hibernate.validator:hibernate-validator'
7786
7887 // Compile-only dependencies
7988 compileOnly ' org.projectlombok:lombok'
@@ -93,7 +102,7 @@ dependencies {
93102 testImplementation ' io.github.bonigarcia:webdrivermanager:6.3.3'
94103
95104 // OAuth2 Testing dependencies
96- testImplementation ' com.github.tomakehurst :wiremock-jre8- standalone:3.0.1 '
105+ testImplementation ' org.wiremock :wiremock-standalone:3.13.2 '
97106 testImplementation ' io.jsonwebtoken:jjwt-api:0.13.0'
98107 testRuntimeOnly ' io.jsonwebtoken:jjwt-impl:0.13.0'
99108 testRuntimeOnly ' io.jsonwebtoken:jjwt-jackson:0.13.0'
0 commit comments