我在运行时编译了一个文件系统上的java文件,这是一个非常简单的类:
public class Test {
public static int res(int a, int b) {
return a*b;
}
}
现在我只想从我的项目中调用res方法(这将是一个jar),但我的代码生成java.lang.ClassNotFoundException: Test
这就是我加载课程的方式:
URL[] urls = new URL[] {new URL("file:///"+UtilOverriding.getFile1().replace("java", "class"))};
URLClassLoader loader = new URLClassLoader(urls);
Class clazz = loader.loadClass("Test");
答案 0 :(得分:1)
指定类路径时,必须提供目录,它是所有包的父目录。请改为尝试。
new URL("file:///"+UtilOverriding.getFile1().getParent()}