如何在JAVA中获取我的应用程序加载的所有类

时间:2014-02-10 11:12:38

标签: java

如何在集成的weblogic服务器中运行我的应用程序加载的所有类。我使用了java -verbose:class并创建了一个javaagent,它使用Instrumentation包返回.getAllLoadedClasses()。两者都返回一大组结果,主要来自包java。*和sun。*但输出中没有来自我的应用程序的类。如何获取我的应用程序加载的类。我是初学者。请帮忙。

2 个答案:

答案 0 :(得分:0)

您可以尝试使用以下内容

Reflections reflections = new Reflections(ClasspathHelper
                          .forClass(Object.class),new SubTypesScanner(false));
Set<String> classList =reflections.
                         getStore().getSubTypesOf(Object.class.getName())

仅供参考:Reflections

答案 1 :(得分:0)

您可以尝试使用java.lang.ClassLoader进行试验。此类具有类型classes的内部属性Vector。如果使用反射,则只能访问其类加载器实例的已加载类。当然,您也可以使用ClassLoader层次结构来询问应用程序类加载器的父级。