Reputation: 115
I'm facing an issue in my Java application where Hibernate (version 6.4.1.Final) attempts to call a method org.jboss.jandex.Indexer.indexWithSummary(java.io.InputStream) which is missing. The error details are as follows:
Error location:
org.hibernate.boot.archive.scan.spi.ClassFileArchiveEntryHandler.toClassDescriptor(ClassFileArchiveEntryHandler.java:65)
Error message:
The following method did not exist: 'org.jboss.jandex.ClassSummary org.jboss.jandex.Indexer.indexWithSummary(java.io.InputStream)'
Context:
org.hibernate.boot.archive.scan.spi.ClassFileArchiveEntryHandler
is loaded from hibernate-core-6.4.1.Final.jar.indexWithSummary
is expected in org.jboss.jandex.Indexer
, which is available in Jandex versions used by:
The issue arises due to conflicting versions of Jandex used by Keycloak and Hibernate. Keycloak uses the JBoss version while Hibernate uses the SmallRye version.
How can I resolve this compatibility issue where both Keycloak and Hibernate can function correctly with their respective versions of Jandex?
I tried forcing the usage of the JBoss Jandex version (3.1.2) in my application, which resolved the issue. However, I am uncertain about the potential impact on Keycloak, which relies on its own version of Jandex (2.4.4.Final).
Upvotes: 5
Views: 619