asm 的 ClassVisitor 中的 visitCode 方法接受类型为 String 的调试参数
public final void visitSource(final String file, final String debug)
根据JavaDoc
debug - 用于计算类的源元素和编译元素之间的对应关系的附加调试信息。可能为空。
我不相信我见过这个填充了除 null 之外的值。
在什么情况下会填充这个值?
它包含的数据是什么样的?
asm 的 ClassVisitor 中的 visitCode 方法接受类型为 String 的调试参数
public final void visitSource(final String file, final String debug)
根据JavaDoc
debug - 用于计算类的源元素和编译元素之间的对应关系的附加调试信息。可能为空。
我不相信我见过这个填充了除 null 之外的值。
在什么情况下会填充这个值?
它包含的数据是什么样的?
该debug
值进入SourceDebugExtension
类文件属性。您可以在JSR-045中找到其内容的完整描述。
通常它用于支持调试编译成 Java 类的非 Java 源代码,例如 - JSP。如果我没记错的话,JRuby 在生成 Java 类时也会填充它。