检查Java字节码是否包含调试符号
我想知道如何检查编译的Java类是否包含调试符号。 问题是我使用debug =“on”从ant编译应用程序,但是特定的JVM会抛出exception:它表示缺少调试符号。
谢谢。
如果在类文件上运行javap -v
,您将看到可用的调试信息。 值得编译一个带有不同-g
选项设置的简单测试类,并使用javap
查看结果。
具有调试信息的类文件最重要的是LineNumberTable,它将字节码指令映射到源行号和LocalVariableTable,它告诉调试器您的本地变量,包括方法的参数在执行期间驻留在VM中。