Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Java [игнор отключен] [закрыт для гостей] / multiple jars of same type in classpath? / 7 сообщений из 7, страница 1 из 1
07.04.2007, 23:48:10
    #34445500
egoist.fish
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
multiple jars of same type in classpath?
Hi all. What if I have different versions of same class in my classpath? What class will the classloader use?
For example I have a web application that utilizes Hibernate and displaytag. There are commons-logging-1.0.2 for Hibernate and commons-logging-1.0.4 for displaytag in webapplication's classpath.
Thanks in advance.
...
Рейтинг: 0 / 0
09.04.2007, 11:37:58
    #34446828
Timm
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
multiple jars of same type in classpath?
В принципе, это зависит от реализации класслоадера.
Обычно грузится первый найденный класс.
Когда есть несколько джаров с одинаковыми названиями классов внутри, могут полететь ClassCastException'ы (когда один класс грузится из одного джара, другой из второго). Частично можно побороть sealed jar' ами. Но вообще, лучше конечно этого избегать.
...
Рейтинг: 0 / 0
09.04.2007, 13:20:26
    #34447217
Blazkowicz
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
multiple jars of same type in classpath?
Кроме ClassCastException существует ещё как минимум 2 исключеиния порожденные jar hell-ом.
IllegalAccessException, который происходит когда класс обращается к примеру к protected методу объекта. Но класс объекта загружен другим загрузчиком и вуаля.
И ещё LinkageError, точно уже не помню, эта ошибка сродни ClassCastException, только возникает при определенных условиях.
И это уже не говоря о всяких NoSuchMethodError, когда в jar-hell учавствуют разные версии одних и тех же библиотек.
...
Рейтинг: 0 / 0
09.04.2007, 17:32:50
    #34448079
wessen
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
multiple jars of same type in classpath?
Blazkowicz
IllegalAccessException, который происходит когда класс обращается к примеру к protected методу объекта. Но класс объекта загружен другим загрузчиком и вуаля.


хм, похоже у меня из-за этого была такая проблема, не знал, что такое может быть.
/topic/395550&hl=
...
Рейтинг: 0 / 0
09.04.2007, 18:24:40
    #34448256
Blazkowicz
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
multiple jars of same type in classpath?
wessenхм, похоже у меня из-за этого была такая проблема, не знал, что такое может быть.
/topic/395550&hl=
А кому я там ссылку давал?
...
Рейтинг: 0 / 0
09.04.2007, 18:25:48
    #34448260
egoist.fish
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
multiple jars of same type in classpath?
Thanks to all. Very exhaustive.
...
Рейтинг: 0 / 0
10.04.2007, 11:34:48
    #34449395
wessen
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
multiple jars of same type in classpath?
Blazkowicz wessenхм, похоже у меня из-за этого была такая проблема, не знал, что такое может быть.
/topic/395550&hl=
А кому я там ссылку давал?

тык эту я прочитал - http://java.sun.com/developer/JDCTechTips/2001/tt0130.html
, перешерстил весь jboss find-ом и grep-ом и ничего не нашел подозрительного.

А вот из этого
BlazkowiczIllegalAccessException, который происходит когда класс обращается к примеру к protected методу объекта. Но класс объекта загружен другим загрузчиком и вуаля.
я понял, что достаточно загрузить библиотеку другим загрузчиком и без всяких Controlling Package Access With Security Permissions или Controlling Package Access With Sealed JAR Files, не будет доступа к protected методам классов данной библиотеки из классов загруженных другим класслоадером. Ну или я опять все перепутал.
...
Рейтинг: 0 / 0
Форумы / Java [игнор отключен] [закрыт для гостей] / multiple jars of same type in classpath? / 7 сообщений из 7, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]