gpt4 book ai didi

Java 类加载 - 哪个类加载器和/或类导致加载?

转载 作者:行者123 更新时间:2023-11-30 07:27:22 25 4
gpt4 key购买 nike

我知道通过使用 verbose:class 标志,我们可以让 jvm 在加载类时以及从何处加载时注销。但是,我想查看一些附加信息 - 哪个类加载器加载了该类,以及理想情况下正在执行的导致加载的类。 (不完全确定后一部分是否有意义!)

有什么方法可以让 jvm 记录此信息,或者有任何其他关于如何获取它的建议吗?谢谢

最佳答案

如果您使用-XX:+TraceClassLoading,您可以看到在某些情况下触发类加载的原因。和-XX:+TraceClassResolution你会看到 Loading 的集合消息(当加载 .class 字节时)和后续 RESOLVE当类本身得到解决时的消息。因此,通过找出哪个RESOLVE您看到的消息应该能够确定哪个类导致加载依赖类。

不幸的是,这并没有告诉您有关类加载器的任何信息。因此,尽管它会打印出从中加载的 JAR,但如果它不能唯一标识您的类加载器,那么可能无法使用标准工具来回答该问题。但是,如果您使用的是 Tomcat 或 OSGi 等提供自己的类加载器的嵌入式引擎,则可能可以打开其他调试标志来识别正在使用哪个类加载器实例。

关于Java 类加载 - 哪个类加载器和/或类导致加载?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36643530/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com