I was working with JDI api in JPDA. But due to its some limitation I am stuck at some point. What are the alternatives to JDI so that I can write custom debuggers for Java programs ? Preferably Java alternatives.
问问题
679 次
1 回答
1
JDI 在 JVMTI 本机 API 之上实现。因此,如果您愿意努力实现自己的调试代理代码,则可以避免使用 JDI 层。
但是,我怀疑它会让你走得更远。我怀疑 JDI 中的限制实际上是 JVMTI 本机 API 本身的限制。(但您可以查看JVMTI 规范,看看它是否支持您想要的功能。)
有没有 JVMTI 的替代品?
AFAIK,不。至少,对于最近的 Oracle Hotspot 版本来说不是!
(JDPA 规范承认并非所有 Java 实现都会实现该规范,因此可能存在其他供应商的 Java 实现以不同方式进行调试的可能性。但是,核心 JRE 和 JVMTI 之间的集成代表了很多软件开发工作,所以Oracle(或其他任何人)不太可能为 Hotspot 实施 JVMTI 替代方案。)
于 2017-10-18T10:47:22.807 回答