prosgarz35 commented on PR #3194:
URL: https://github.com/apache/james-project/pull/3194#issuecomment-5806632552
I identified and fixed the root cause of the Build #12 failure in
`james-server-queue-jms`:
### Root Cause
Excluding `io.netty:*` from `artemis-jakarta-server` stripped runtime
dependencies that the Artemis embedded broker engine strictly requires
(specifically `io.netty:netty-common`, causing `NoClassDefFoundError:
io/netty/util/collection/LongObjectHashMap` during broker startup in
tests).
### Fix Applied
1. **Strict Netty Version Alignment via BOM**:
- Imported `io.netty:netty-bom:${netty.version}` into
`<dependencyManagement>` in the root `pom.xml`. This guarantees that all
transitive Netty components across the entire project (including those needed
by Artemis server) are
strictly pinned to the project-wide Netty version (`4.1.135.Final`),
preventing any version divergence.
2. **Selective Exclusion**:
- Kept the `io.netty:*` exclusion on `artemis-jakarta-client` (pure
JMS client).
- Removed the exclusion on `artemis-jakarta-server` so the embedded
test broker can run, while its Netty dependencies are now strictly governed by
`netty-bom`.
3. **Test & POM Cleanup**:
- Removed redundant explicit version for `artemis-jakarta-server` in
`server/queue/queue-jms/pom.xml`.
- Removed the incorrect `@Test` annotation on
`getManageableMailQueue()` in `JMSCacheableMailQueueTest` to eliminate the
JUnit discovery warning.
--
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]
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]