我有个问题。
我有我的包裹的绝对路径,例如:

c:\java_project\src\com\myclass\mypackage


此程序包中提供3个类:MyClass1,MyClass2,MyClass3

我需要将所有类加载到列表

我将所有.java文件加载到列表中,但我不了解此类的加载方式

List<URL> fieldURLs=new ArrayList<URL>();
File pathToClasses = null;
pathToClasses = new File(packageName);
File[] files = pathToClasses.listFiles();


请帮我解决这个问题

最佳答案

如果我正确理解您的意见:

List<Class> classes = new LinkedList<>();

for (File file : new File(pathToClasses).listFiles()) {
    classes.add(Class.forName(file.getName().split("\\.")[0])); // if you don't have packages
}

classes.forEach(System.out::println);


在我的文件夹中,得到以下结果:

class Class1
class Class2
class Class3

09-30 14:18
查看更多