jamesfredley commented on PR #15677:
URL: https://github.com/apache/grails-core/pull/15677#issuecomment-4724296176

   ## Fixed the failing JDK 25 CI jobs
   
   All JDK 25 jobs (`Build Grails-Core 25`, `Functional Tests 25`, `Mongodb / 
Hibernate5 / Hibernate7 Functional Tests 25`) were failing at **configuration 
time** with the same error:
   
   ```
   Could not determine the dependencies of task 
':grails-test-examples-micronaut-hibernate7:bootJar'.
   > Could not resolve org.apache.groovy:groovy:{strictly 5.0.5}.
     ConflictingConstraintsException: Component is the target of multiple 
version constraints with conflicting requirements:
       5.0.5 - directly in 'project :grails-hibernate7-micronaut-bom' 
(enforcedRuntimeElements)
       5.0.6 - transitively via 'project :grails-hibernate7-micronaut-bom' 
(enforcedRuntimeElements)
   ```
   
   ### Root cause
   
   In `dependencies.gradle`, the Micronaut-island BOM overrides live in two 
adjacent blocks. The Micronaut 5.0.0 GA bump set the Groovy override to `5.0.6` 
in the `grails-micronaut-bom` / `grails-hibernate5-micronaut-bom` block, but 
the `grails-hibernate7-micronaut-bom` block was left at `5.0.5`.
   
   Because `grails-hibernate7-micronaut-bom` enforces `5.0.5` **directly** 
while also inheriting `5.0.6` **transitively** from `grails-micronaut-bom`, the 
two strict/enforced constraints conflicted and dependency resolution failed - 
blocking every JDK 25 job before any task could run. JDK 21 jobs were 
unaffected since the island is auto-excluded there.
   
   ### Fix
   
   One-line change: align the stale override to Micronaut 5 GA's managed 
`groovy.version`.
   
   ```diff
     else if (project.name in (['grails-hibernate7-micronaut-bom'])) {
             ...
   -                 'groovy.version'  : '5.0.5',
   +                 'groovy.version'  : '5.0.6',
   ```
   
   All three island BOMs now agree on `5.0.6`. `spock.version` stays 
`2.4-groovy-5.0` (Groovy 5 line, patch-independent).
   
   ### Verified locally on JDK 25 (Corretto 25)
   
   - `:grails-test-examples-micronaut-hibernate7:dependencies --configuration 
runtimeClasspath` → now resolves to `{strictly 5.0.6} -> 5.0.6`, no conflict
   - `:grails-test-examples-micronaut-hibernate7:bootJar` (the exact 
previously-failing task) → **BUILD SUCCESSFUL**
   - `validateDependencyVersions` → **BUILD SUCCESSFUL**
   


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]

Reply via email to