Избавьтесь от ClassCastException в разных загрузчиках классов - PullRequest
0 голосов
/ 09 февраля 2012

У меня есть собственный JAR (), запущенный через разделенные загрузчики классов, и один JAR ( EhCache ), загруженный загрузчиком общих классов. Так что я могу получить доступ к различным экземплярам кэша через синглтон CacheManager.

Как я могу привести те же классы из своего JAR-файла среди разделенных загрузчиков классов?

Когда я пытаюсь вызвать свой собственный метод, я получаю ClassCastException как класс a.A не является типом a.A.

PS: Может ли пользовательский загрузчик классов или java отражение мне помочь?

Ответы [ 2 ]

2 голосов
/ 09 февраля 2012

Если вы действительно хотите иметь возможность обмениваться экземплярами между двумя загрузчиками классов, одним из вариантов является реализация общего интерфейса. этот общий интерфейс должен быть доступен из общего загрузчика классов.

0 голосов
/ 09 февраля 2012

Я не верю, что ты можешь. Насколько я знаю, если вы загружаете один и тот же класс, используя два разных загрузчика классов, эти два класса обрабатываются так, как если бы они были полностью не связаны.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...