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
@@ -53,10 +53,20 @@ dependencies {
5353
5454 // Thymeleaf extras - Spring Boot 4 manages the version
5555 implementation ' org.thymeleaf.extras:thymeleaf-extras-springsecurity6'
56- implementation ' nz.net.ultraq.thymeleaf:thymeleaf-layout-dialect:3.4.0'
56+ // Workaround for GROOVY-11745: Groovy 5.0.4 (shipped with Spring Boot 4.0.3) has a
57+ // regression that causes an NPE when Groovy 5 code calls setters on objects from
58+ // Groovy 4-compiled libraries. This breaks thymeleaf-layout-dialect 3.4.0 (compiled
59+ // with Groovy 4.0.25) in DecorateProcessor.doProcess().
60+ // See: https://issues.apache.org/jira/browse/GROOVY-11745
61+ // See: https://github.com/ultraq/thymeleaf-layout-dialect/issues/251
62+ // TODO: Remove this workaround when Groovy 5.0.5+ is available and adopted by Spring Boot
63+ implementation(' nz.net.ultraq.thymeleaf:thymeleaf-layout-dialect:3.4.0' ) {
64+ exclude group : ' org.apache.groovy'
65+ }
66+ implementation ' org.apache.groovy:groovy:5.0.3'
5767
5868 // OpenAPI (Swagger)
59- implementation ' org.springdoc:springdoc-openapi-starter-webmvc-ui:2.8.9 '
69+ implementation ' org.springdoc:springdoc-openapi-starter-webmvc-ui:3.0.1 '
6070
6171 // Runtime dependencies
6272 runtimeOnly ' org.springframework.boot:spring-boot-devtools'
@@ -69,8 +79,7 @@ dependencies {
6979 // Utility libraries
7080 implementation ' org.passay:passay:1.6.6'
7181 implementation ' com.google.guava:guava:33.5.0-jre'
72- implementation ' jakarta.validation:jakarta.validation-api:3.1.1'
73- implementation ' org.hibernate.validator:hibernate-validator:8.0.2.Final'
82+ implementation ' org.hibernate.validator:hibernate-validator'
7483
7584 // Compile-only dependencies
7685 compileOnly ' org.projectlombok:lombok'
@@ -90,7 +99,7 @@ dependencies {
9099 testImplementation ' io.github.bonigarcia:webdrivermanager:6.3.3'
91100
92101 // OAuth2 Testing dependencies
93- testImplementation ' com.github.tomakehurst :wiremock-jre8- standalone:3.0.1 '
102+ testImplementation ' org.wiremock :wiremock-standalone:3.13.2 '
94103 testImplementation ' io.jsonwebtoken:jjwt-api:0.13.0'
95104 testRuntimeOnly ' io.jsonwebtoken:jjwt-impl:0.13.0'
96105 testRuntimeOnly ' io.jsonwebtoken:jjwt-jackson:0.13.0'
0 commit comments