是否有任何工具可以连接到 jvm 并实时显示类如何加载到该 jvm 中?我想它会成为一个很棒的 jvisualvm 插件..但是没有找到这样的东西让我想知道这是否可行?我只找到了一些看似“晦涩”的工具的参考资料,这些工具与 weblogic 或 webspere 严格相关。
假设这样的工具是可能的,它是否与特定容器严格相关?
谢谢!
我意识到这不适用于已经运行的 JVM,但是怎么样java -verbose:class?
如果您想调试特定类的类加载器问题,您可以连接调试器并为该类设置类加载断点(Eclipse 就是这样调用它们的,在 IntelliJ 中您只需在类的第一行放置一个断点)。
更新:既然您提到您想查看类加载器,理论上我想您可以编写一个代理来调用java.lang.instrument.Instrumentation.getAllLoadedClasses()并agentmain打印类树及其类加载器。但问题是它ClassLoader没有“身份”,因此您可能会得到一个漂亮的图片,但您仍然不知道哪个类加载器属于哪个 Java EE 部署或 OSGi 包。我想这就是为什么没有那么多工具可以做到这一点......
| 归档时间: |
|
| 查看次数: |
1747 次 |
| 最近记录: |