Java JVM字节码行号

Java JVM字节码行号,java,jvm,bytecode,memory-address,Java,Jvm,Bytecode,Memory Address,我们试图用字节码来分析Java代码 有没有一种方法可以让JVM吐出它正在执行的字节码地址,或者在运行时截取发给JVM的字节码地址 根据崩溃堆栈,JVM似乎应该拥有所有这些信息。有可用的开源代码覆盖工具,这些工具所做的是使用代码检测来跟踪执行了哪些行 JVM在运行时执行本机机器代码,而不是字节代码。您需要使用代码注入在字节码指令之间添加所需的指令,但这会降低执行速度。如果您只需要查看一行是否执行过,您可以为每行设置一个标志,这应该会更快。您的问题不清楚-您所说的“吐出字节码的地址”是什么意思?当然

我们试图用字节码来分析Java代码

有没有一种方法可以让JVM吐出它正在执行的字节码地址,或者在运行时截取发给JVM的字节码地址


根据崩溃堆栈,JVM似乎应该拥有所有这些信息。

有可用的开源代码覆盖工具,这些工具所做的是使用代码检测来跟踪执行了哪些行


JVM在运行时执行本机机器代码,而不是字节代码。您需要使用代码注入在字节码指令之间添加所需的指令,但这会降低执行速度。如果您只需要查看一行是否执行过,您可以为每行设置一个标志,这应该会更快。

您的问题不清楚-您所说的“吐出字节码的地址”是什么意思?当然有。它被称为“调试API”,如果您真的搜索它,您可能会找到它……很抱歉造成混淆。我们正在尝试进行源代码覆盖率分析。所以我们想看看是否有一种方法可以让JVM报告Java源代码的行号。如果JVM不能,那么有没有办法让JVM报告执行字节码的行号。Thanks@FarnWang这是可能的(尽管我不确定如何),您可能希望检查现有的代码覆盖率工具,如cobertura或jacoco。。。