【发布时间】:2010-10-19 13:04:12
【问题描述】:
要在 JVM 中调试类加载,我们可以使用参数-verbose:class,但是...有人知道如何调试资源加载(例如属性文件)吗?
【问题讨论】:
标签: java debugging jvm profiling classloader
要在 JVM 中调试类加载,我们可以使用参数-verbose:class,但是...有人知道如何调试资源加载(例如属性文件)吗?
【问题讨论】:
标签: java debugging jvm profiling classloader
我想您需要考虑使用分析器。或者使用仪器接口的东西。
不确定它有多稳定,但有 BTrace,它是一种 Java 版本的 DTrace。
BTrace 是用于 Java 平台的安全、动态跟踪工具。 BTrace 可用于动态跟踪正在运行的 Java 程序。 BTrace 动态检测目标应用程序的类以注入跟踪代码(“字节码跟踪”)。跟踪代码用 Java 编程语言表示。
如果您在开发机器上执行此操作,并且事件(正在加载的资源)的数量不是太频繁,您也可以在调试器中设置一个断点。
【讨论】:
资源以URLs 的形式提供。所以,我想用“纯”Java 来做:安装一个自定义的ClassLoader,将URLs 复制到一个带有自定义URLStreamHandler 的版本中。将您的监控代码放入流处理程序中并转发到原始代码。
【讨论】:
【讨论】:
【讨论】:
有几种技术可以调试类加载问题。以下是 JRebel 创建者 总结这些技术的精彩幻灯片:Do you really get class loaders?
【讨论】: