Я пытаюсь загрузить ресурс в свою среду выполнения для библиотеки. Но в моей текущей реализации его может видеть только очень конкретный экземпляр URLClassLoader.
URLClassLoader classLoader = new URLClassLoader(urls, ClassLoader.getSystemClassLoader());
classLoader.addFile(super.getResource(urlPath));
classLoader.classLoader.getResourceAsStream(path) //works
URLClassLoader secondClassLoader = new URLClassLoader(urls, ClassLoader.getSystemClassLoader());
secondClassLoader.classLoader.getResourceAsStream(path) // doesn't work
Другая проблема заключается в том, что я не знаю, какой ClassLoader библиотека фактически использует в качестве родителя. Лучшим решением было бы такое, при котором каждый загрузчик классов может получить доступ к ресурсу.
Как убедиться, что динамически загружаемый ресурс доступен всем загрузчикам классов?
classLoader
classLoader
иsecondClassLoader
? - person schneida   schedule 14.05.2018