Автор оригинала: mkyong.
Проблема
Используя аннотацию Hibernate, после обновления версии Hibernate с v3.2.7 до v3.6 , появляется следующее сообщение об ошибке:
Caused by: java.lang.ClassCastException: org.hibernate.annotations.common.reflection.java.JavaReflectionManager cannot be cast to org.hibernate.annotations.common.reflection.MetadataProviderInjector
Вот список библиотек аннотаций Hibernate:
- Вот список библиотек аннотаций Hibernate:
- Вот список библиотек аннотаций Hibernate:
- Вот список библиотек аннотаций Hibernate:
Решение
Модуль аннотации Hibernate объединен с модулем ядра Hibernate начиная с версии v3.5 (если не ошибка). В этом случае в режиме гибернации обнаруживаются два модуля аннотаций, как из ” Ядра гибернации “, так и из ” Аннотации гибернации “, что вызывает конфликт и вызывает исключение ClassCastException
.
Чтобы исправить это, просто удалите оба hibernate-annotations-3.4.0.GA.jar
и hibernate-commons-annotations-3.0.0.GA.jar
, потому что последняя библиотека ядра Hibernate способна выполнять задачу аннотирования без других зависимостей.
Оригинал: “https://mkyong.com/hibernate/hibernate-error-javareflectionmanager-cannot-be-cast-to-metadataproviderinjector/”