从jar中提取类时的ClassNotFound异常

时间:2009-08-06 17:40:53

标签: java classloader

我试图从.jar文件中获取一个类是不成功的。 .jar位于C:\ CTF.jar,并在名为CTF的文件夹中包含.class文件CaptureTheFlagRules。以下代码不起作用:

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) {
}  

代码在forName()调用中通过ClassNotFoundException。我需要做什么才能上课?

1 个答案:

答案 0 :(得分:2)

尝试:

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

如果它在CTF文件夹中,则可能在CTF包中。