我试图在Java中找到运行时可用的所有类的名称,并且使用Guava中的反射使用以下代码获得了一些成功:
ClassPath classPath = ClassPath.from(ClassLoader.getSystemClassLoader());
contextClasses = classPath.getAllClasses();
这似乎在某种程度上让我获得了大约2500个类名,但是它找不到所有这些名称,特别是java.lang,java.util等类,我真的需要知道它们。 / p>
我应该使用不同的类加载器吗?我也试过
Thread.currentThread().getContextClassLoader()
任何指针都会非常感激。感谢
Ewen的
我使用了这篇文章的更多信息:How can I list all classes loaded in a specific class loader来实际实现答案中建议的解决方案。这个接缝可以获得所有标准的java库(大约500个ish),但不是之前的方法。我可以与之前的相结合,以获得我需要的一切。
感谢大家的帮助。
答案 0 :(得分:2)