【发布时间】:2016-01-30 08:02:35
【问题描述】:
这段代码的想法是接收一些扩展我在服务器上的另一个 java 文件的 java 文件。
此时我忽略了明显的安全问题,但代码如下:
private boolean isTheFileIamLookingFor(String name,String path,String nameOfFatherClass) {
System.out.println("NAME IS "+name); //prints correct class name
System.out.println("PATH IS "+path); //prints correct path
if(Files.getFileExtension(path).equals("class"))
{
try {
ClassLoader classLoader = this.getClass().getClassLoader();
Class<?> loadedMyClass = classLoader.loadClass(String.format("%s.class", name));
Class<?> c[] = loadedMyClass.getInterfaces();
if(Arrays.asList(c).contains(Class.forName(nameOfFatherClass)))
{
return true;
}
} catch (ClassNotFoundException e) {
e.printStackTrace();
}
}
return false;
}
但我得到了错误
java.lang.ClassNotFoundException: MyClass.class
但事实是文件就在那里。 关于为什么找不到课程的任何想法?
【问题讨论】:
标签: java gwt classloader