The SourceDebugExtension attribute is an optional attribute in the
attributes 
table of the ClassFile  structure. There can be no more than one 
SourceDebugExtension  attribute in the attributes table of a given
ClassFile structure. 
The SourceDebugExtension attribute has the following format: 
      SourceDebugExtension_attribute {
       u2 attribute_name_index;
       u4 attribute_length;
       u1 debug_extension[attribute_length];
    }
  
The items of the SourceDebugExtension_attribute structure are as follows:
 attribute_name_index
-  The value of the 
attribute_name_index item must be a valid index into the
constant_pool table. The constant_pool entry at that index must be a
CONSTANT_Utf8_info  structure representing the string
"SourceDebugExtension".
  attribute_length
-  The value of the 
attribute_length item indicates the length of
the attribute, excluding the initial six bytes.  The value of the 
attribute_length item is thus the number of bytes in 
the debug_extension[] item.
  debug_extension[]
-  The 
debug_extension array holds a string, which must be 
in UTF-8 format.  There is no terminating zero byte. 
The string in the debug_extension item will be interpreted as 
extended debugging information.  The content of this string has no semantic 
effect on the Java Virtual Machine. 
   
 |