2015-04-05 122 views
0

我创建了Bukkit-Plugins,并且想要动态加载类。我写了这样的代码:使用现有类加载器加载文件夹中的类

private static Class<?> getClassFromFile(File folder, File file) { 
    if (!folder.exists()) 
     return null; 
    try { 
     URL url = folder.toURL(); 
     URL[] urls = new URL[] { url }; 

     ClassLoader loader = new URLClassLoader(urls); 

     Class<?> cls = loader.loadClass(getNameWithoutExtension(file)); 
     return cls; 
    } catch (Exception e) { 
     return null; 
    } 
} 

但是我必须使用主类加载器,例如ClassLoader cl; 如何使用此现有类加载器从文件夹“文件夹”加载文件“文件”?

谢谢您的帮助

回答

0

我发现了一个很简单的解决方案:d!

对于所有在那里的其他人:

变化

ClassLoader loader = new URLClassloader(urls); 

URLClassLoader loader = new URLClassLoader(urls, cl); 

正常工作对我!