ClassLoader не хочет считывать класс

290
25 ноября 2017, 10:04

Создал объект ClassLoader вот так

ClassLoader classLoader = new ClassLoader() {
    @Override
    public Class<?> loadClass(String name) throws ClassNotFoundException {
        return super.loadClass(name);
    }
};

Пытаюсь считать вот так

String path = "тут мой полный путь к файлу с расширением .class";
Сlass clazz = classLoader.loadClass(path);

Выкидывает ошибку ClassNotFoundException

Answer 1

Вот пример динамической загрузки класса:

// Create a File object on the root of the directory containing the class 
file
File file = new File("c:\\myclasses\\");
try {
    // Convert File to a URL
    URL url = file.toURL();          // file:/c:/myclasses/
    URL[] urls = new URL[]{url};
    // Create a new class loader with the directory
    ClassLoader cl = new URLClassLoader(urls);
    // Load in the class; MyClass.class should be located in
    // the directory file:/c:/myclasses/com/mycompany
    Class cls = cl.loadClass("com.mycompany.MyClass");
} catch (MalformedURLException e) {
} catch (ClassNotFoundException e) {
}

Как сказали в комментариях, адреса файлов нужно писать в ClassLoader. А точнее даже адрес самой папки. Подробней можно посмотреть тут

READ ALSO
Сервер на Java, способ реализации

Сервер на Java, способ реализации

Доброго утраХочу сделать приложение: сервер на Java + клиенты (Десктоп на C#, андроид, ios, браузер), сомневаюсь какую из реализаций (или как это...

240
Java visual VM пишет cannot find jdk 1.7 or higher

Java visual VM пишет cannot find jdk 1.7 or higher

На пространстве интернета нашел вот эту статью (на самом деле нашел больше, но все предлагают именно это решение), что надо зайти по пути visualvm_139\etc\...

305
Stack overflow при создании объекта

Stack overflow при создании объекта

При создании GET в ответе получаю Stackoveflow ошибку

302
как правильно добавить технологию primefaces

как правильно добавить технологию primefaces

хочу реализовать возможности primefaces в моем проекте но скорее всего добавление jar файла primefaces в библиотеку проекта не помогает,подскажите...

315