假设我有一个Java程序的特定指令地址(无论出于何种原因),我想知道它属于哪个函数。
如果这是来自C ++程序,我可以使用binutils(addr2line等)来获取它。
这对于Java程序是否可行,因为没有ELF文件,因为字节码是JIT-ted?
答案 0 :(得分:2)
你听说过javap ??
使用javap -c MyClass.class
,您可以查看字节码指令。
检查https://docs.oracle.com/javase/7/docs/technotes/tools/windows/javap.html是否有帮助
答案 1 :(得分:0)
perf-map-agent解决了这个问题:
perf-map-agent是一个代理,它将为其生成这样的映射文件 Java应用程序。它由一个编写C和Java的Java代理组成 Java引导程序应用程序,它将代理程序附加到正在运行的Java上 过程