Поэтому у меня есть загрузчик классов выгрузки класса как так:Classloader java.lang.NoClassDefFoundError?
ClassLoader cl = new URLClassLoader(urls);
Class cls = cl.loadClass("modules.Test");
Method method = cls.getDeclaredMethod("getModule", noparams);
Class<?> type = method.getReturnType();
if(type.newInstance() instanceof Module){
System.out.println("Accessed field with type: Module");
}
Класс Module
находится в другом банке во время выполнения. И Test.class
был сгенерирован в этой основной банке, после чего я разобрал его, так что зависимость будет там.
Как получить доступ к другим зависимостям из внешнего файла .class, который я загрузил?
Исключение:
java.lang.NoClassDefFoundError: com/xxxxxxx/xxxx/objects/Module
Caused by: java.lang.ClassNotFoundException: com.xxxxxxx.xxxx.objects.Module
В файле JAR содержится файл 'modules/Test.class'? – EJP
Да, в моем тесте файл класса остался в основном банке. Но я планирую удалить его после того, как я вытащил сгенерированный Test.class. – ThatGuy343
, пожалуйста, укажите, какое именно исключение – yair