До java9 для добавления внешней банки для пути к классам во время выполнения программным способом:
URLClassLoader sysloader = (URLClassLoader) ClassLoader.getSystemClassLoader();
Method method = URLClassLoader.class.getDeclaredMethod("addURL", new Class[]{URL.class});
method.invoke(sysloader, new Object[]{file.toURI().toURL()});
Теперь с java9 возникает проблема:
Исключение в потоке "main" java.lang.ClassCastException: java.base/jdk.internal.loader.ClassLoaders $AppClassLoader не может быть добавлено в java.base/java.net.URLClassLoader
URLClassLoader
больше не работает в Java 9. Что теперь делать в jdk9 для добавления внешнего бана в путь к классам во время выполнения программно?