我的问题与调试有关 - 特别是在Java / JVM上。
我想知道Java中的调试是如何工作的:
jdb / jvm
如何将设置在Java源代码中的断点与当前正在执行的字节码匹配。
请问有人可以回答上述问题和/或指向与JVM调试以及其工作方式相关的文档/规范吗?
我的问题与调试有关 - 特别是在Java / JVM上。
我想知道Java中的调试是如何工作的:
jdb / jvm
如何将设置在Java源代码中的断点与当前正在执行的字节码匹配。请问有人可以回答上述问题和/或指向与JVM调试以及其工作方式相关的文档/规范吗?
-g
选项(及其衍生选项)将原始源文件和行号存储在.class文件中。Java调试器将能够在运行时执行字节码时检索该信息,并将其与您的源代码匹配。-g:none
减小.class/.jar文件的大小,但实际上,对于调试器和JVM可能最终打印出来的堆栈跟踪,源/行号信息非常有用,因此通常情况下建议保留。