Здравствуйте, Аноним, Вы писали:
A>>Вопрос подкупает своей глупостью. Как загрузить одну native-библиотеку в разных classloader'ах?
A>>Знаю, что нельзя, но... Но проект построен так, что, одна бибилиотека используется набором плагинов, которые загружаются в разных classloader'ах. Плодить библиотеки нельзя — пусть она и небольшая, но заранее не известно, сколько плагинов будет создано (они "создаются" динамически).
A>>Подскажите какую-нибудь хитрость. Или глупость.
A>>P.S. http://java.sun.com/docs/books/jni/html/design.html#8628 (описание ограничения на загрузку, как я понял...
)
А>А обязательно её загружать 2 раза?
А>Может, после того, как её кто-то загрузил ей могут пользоваться все?
Одно из решений — это переписать "разные classloader-ы" таким образом, чтобы они делегировали загрузку
класса, в котором инициализируется native библиотека, одному специальному загрузчику (скажем NativeLoader).
Подробно почитать про загрузчики можно здесь:
http://blogs.sun.com/vmrobot/category/Class%2BLoading
-katya