fix: add jboss-threads 3.9.2 to Undertow feature for Java 25 compatibility#15427
Merged
jamesfredley merged 1 commit into7.0.xfrom Feb 21, 2026
Merged
fix: add jboss-threads 3.9.2 to Undertow feature for Java 25 compatibility#15427jamesfredley merged 1 commit into7.0.xfrom
jamesfredley merged 1 commit into7.0.xfrom
Conversation
7244c0d to
c0a647b
Compare
…ility When Undertow is selected as the servlet container, undertow-core transitively pulls in jboss-threads 3.7.0 which calls the terminally deprecated sun.misc.Unsafe::objectFieldOffset in its static initializer, producing a warning on Java 25. Pin jboss-threads to 3.9.2 as a runtimeOnly dependency to resolve this. Assisted-by: Claude Code <Claude@Claude.ai>
c0a647b to
13d86ab
Compare
Contributor
There was a problem hiding this comment.
Pull request overview
This pull request adds JBoss Threads 3.9.2 as a runtime dependency when Undertow is selected as the servlet container in grails-forge to fix a Java 25 compatibility warning. The older version (3.7.0) pulled in transitively by undertow-core uses the terminally deprecated sun.misc.Unsafe::objectFieldOffset method.
Changes:
- Added jboss-threads 3.9.2 to the central pom.xml for version management
- Modified SpringBootUndertowFeature to include jboss-threads as a runtimeOnly dependency
- Added test coverage verifying the jboss-threads dependency appears in generated builds
Reviewed changes
Copilot reviewed 3 out of 3 changed files in this pull request and generated no comments.
| File | Description |
|---|---|
| grails-forge/grails-forge-core/src/main/resources/pom.xml | Added jboss-threads 3.9.2 dependency entry with explanatory comment about Java 25 compatibility |
| grails-forge/grails-forge-core/src/main/java/org/grails/forge/feature/spring/SpringBootUndertowFeature.java | Added runtimeOnly jboss-threads dependency using lookupArtifactId pattern |
| grails-forge/grails-forge-core/src/test/groovy/org/grails/forge/feature/spring/SpringBootSpec.groovy | Added test verifying jboss-threads dependency is included when Undertow is selected |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
jdaugherty
approved these changes
Feb 21, 2026
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
build.gradlenow includesruntimeOnly "org.jboss.threads:jboss-threads:3.9.2"sun.misc.Unsafe::objectFieldOffsetwarning on Java 25 caused by undertow-core pulling in jboss-threads 3.7.0, which calls the terminally deprecated API in its static initializerpom.xmlusing thelookupArtifactIdpattern, consistent with how other third-party dependency versions are storedChanges
grails-forge/.../pom.xmljboss-threads:3.9.2dependency entrygrails-forge/.../SpringBootUndertowFeature.javaruntimeOnlydependency vialookupArtifactIdgrails-forge/.../SpringBootSpec.groovyTesting
All 5
SpringBootSpectests pass, including the newtest undertow servlet includes jboss-threads dependencytest.