La opción Javap -L no puede mostrar información del número de línea
Pregunta
los javap
El comando tiene varias opciones, una de ellas es -l
, que puede imprimir el número de línea y las tablas variables locales. Supongamos que un programa Java se ha compilado correctamente y está el archivo "Main.Class", por lo que ejecutar javap -l Main
puede producir algo como:
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;
Sin embargo, estoy usando esto javap -l xxx
Comando en los archivos de clase de un programa Java, pero el área del número de línea y la tabla de variables locales están vacías (lo que no debería estar). los javap
comando y otras opciones como -s
, -verbose
funciona bien, pero solo el área de información de línea correspondiente al -l
La opción está vacía.
¿Alguien ha encontrado alguna vez un caso tan extraño?
Solución
Use -g para compilar su código, de lo contrario, los números de línea no se mantienen (similar a la traza de pila que muestra "código compilado" en lugar del número de línea)