在我们的产品中有几个jdk 1.6.0._17编译的java源文件。 只要其中任何一个出现异常,他们就不会给出行号。
我使用javap来了解有关jdk 1.6.0._17编译类的更多信息。 javap输出没有任何LineNumberTable,这就是为什么行号不会显示在异常堆栈跟踪中的原因。
我的问题: 我的javac命令不使用任何与debug相关的标志(如-g:lines,vars,source)。 因此,类文件应至少包含源和&行号信息默认为。 不能使用-g:none来禁用生成调试信息。
那么在.class文件中没有生成LineNumberTable的其他原因是什么?
非常感谢有关此方面的任何帮助。
此致 VK
答案 0 :(得分:0)
“javap输出没有任何LineNumberTable,这就是为什么行号不会显示在异常堆栈跟踪中的原因。”
尝试:
javap -verbose -l -c JavaApplication2