该javap
命令有几个选项,其中之一是-l
,可以打印行号和局部变量表。假设一个java程序已经编译成功,并且有“Main.class”文件,那么运行javap -l Main
会产生类似的结果:
public static void main(java.lang.String[]);
LineNumberTable:
line 100: 0
line 101: 27
line 275: 54
LocalVariableTable:
Start Length Slot Name Signature
0 55 0 args [Ljava/lang/String;
但是,我在javap -l xxx
一个java程序的类文件上使用了这个命令,但是行号和局部变量表的区域是空的(不应该是)。该javap
命令和其他选项(例如-s
, )-verbose
工作正常,但只有与选项对应的行信息区域-l
为空。
有没有人遇到过这种奇怪的情况?