Зависимые классы jar не загружаются из URLClassloader
У меня запущено приложение, в котором я читаю список файлов JAR и загружаю каждый jar с помощью URLClassLoader
но при загрузке Class
из одного JAR, который ссылается на другой класс из другого JAR, я получаю NoClassDefError
,
String jbossConfigPath = System.getProperty("jboss.server.config.dir");
String jarPath = jbossConfigPath + "/somepath";
File file = new File(jarPath);
String [] jars = file.list();
URL[] jarURLs = new URL [jars.length];
int i=0;
for(String jar : jars){
File fileJar = new File(file,jar);
jarURLs[i] = fileJar.toURI().toURL();
i++;
}
URLClassLoader cl = URLClassLoader.newInstance(jarURLs,Thread.currentThread().getContextClassLoader());
Class<?> cls = ul.loadClass("com.some.class.Demo");
Я всегда получаю NoClassDefError
во время загрузки Demo
класс, как он имеет в виду Demo2
класс в разных банках.
Может ли кто-нибудь помочь, пожалуйста?