当前位置: 首页 > 知识库问答 >
问题:

获取给定JVM实例中当前加载的所有类的列表

申浩广
2023-03-14

知道给定的JVM实例当前加载了哪些类会很方便。

例如,有没有办法通过JVisualVM获取它们?

编辑:我知道@Java给出的解决方案-获取JVM中加载的所有类的列表,但我想知道是否有办法通过JVisualVM或其他工具实现这一点。目前,我正在处理一个RCP应用程序,我宁愿不必通过java工具运行应用程序(是的,我很懒)。

共有2个答案

杨乐意
2023-03-14

可以使用VisualVM执行此操作:

  1. $JAVA\U HOME/bin/jvisialvm
  2. 选择您的jvm应用程序-

欢迎光临。

吴松
2023-03-14

您是否尝试过jconsole?

JConsole应该能够显示加载的类列表,请参阅jConsole文档。

请参阅查看概述信息部分,屏幕截图显示加载的类数量。此外,您可以看到一个名为类的选项卡,这是类加载信息的位置。

 类似资料:
  • 问题内容: 我想获得属于某个包的所有类及其所有子级的列表。这些类可能已经或可能尚未加载到JVM中。 问题答案: 这不是编程解决方案,但你可以运行 然后JVM会丢弃它正在加载的内容以及从何处卸载。

  • 问题内容: 我想获取某个类的对象的所有实例。 例如: 应该是或(顺序无关紧要)。 一个加号是,如果该函数将返回具有所请求类的超类的实例,尽管这不是必需的。 我能想到的一种方法是使用包含实例数组的静态类成员变量。在类的构造函数和析构函数中,我将在数组中添加或删除。如果我必须在许多类上这样做,这将很麻烦且容易出错。 问题答案: 如果您从TrackableObject类派生所有对象,则可以将此类设置为处

  • 问题内容: 我已经看到了很多人从一个模块中提取所有类的示例,通常是这样的: 太棒了 但是我无法找到如何从 当前 模块中获取所有类。 这可能确实很明显,但是我什么也找不到。谁能帮我吗? 问题答案: 尝试这个: 在您的情况下: 甚至更好: 因为带谓语。

  • 问题内容: 出于调试原因和好奇心,我希望列出所有加载到特定类加载器的类。 鉴于类加载器的大多数方法都受到保护,实现我想要的最佳方法是什么? 谢谢! 问题答案: 可以做你想要的。 根据文档: 返回所有类的数组,这些类的加载程序是初始加载程序。 我不确定“启动加载程序”是什么意思。如果这样不能给出正确的结果,请尝试使用该方法并通过ClassLoader手动进行过滤。 如何获得的实例 只有代理JAR(与

  • 问题内容: 在Java中,是否有任何可能的方法来获取某个类的所有实例? 问题答案: 实例化类(Singleton模式)时,可以使用Factory静态初始化程序,然后将工厂构造函数中的每个生成的实例添加到List中。 像这样的东西:

  • 问题内容: 有没有办法在Python中返回当前目录中所有子目录的列表? 我知道您可以使用文件来执行此操作,但是我需要获取目录列表。 问题答案: 你是指直接子目录,还是树下的每个目录? 无论哪种方式,你都可以使用以下方法: 将为每个子目录生成一个元组。该三元组中的第一个条目是目录名称,因此 应该递归地给你所有的子目录。 请注意,元组中的第二个条目是该条目在第一个位置的子目录的列表,因此你可以改用它,