Исключение ClassNotFound при извлечении класса из фляги - PullRequest
1 голос
/ 06 августа 2009

Я безуспешно пытался получить класс из файла .jar. Файл .jar находится в C: \ CTF.jar и содержит файл класса. CaptureTheFlagRules в папке с именем CTF. Следующий код не работает:

try {
    File jarFile = new File("C:\\CTF.jar");
    URLClassLoader urlClassLoader = URLClassLoader.newInstance(new URL[] 
        { jarFile.toURI().toURL() }, getClass.getClassLoader());
    Class<?> unknownClass = Class.forName("CaptureTheFlagRules", 
        true, urlClassLoader); 
    ....
} catch (MalformedURLException e) {
} catch (ClassNotFoundException e) {
}  

Код пропускает исключение ClassNotFoundException при вызове forName (). Что мне нужно сделать, чтобы получить мой класс?

1 Ответ

2 голосов
/ 06 августа 2009

Попробуйте:

Class<?> unknownClass = Class.forName("CTF.CaptureTheFlagRules", 
    true, urlClassLoader); 

Если он находится в папке CTF, он, вероятно, находится в пакете CTF.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...