在 Java 调试器接口文档中 地点等级, ,有一段讨论该位置的“阶层”。我一直在寻找有关如何实现新层(例如 Scala 或 JRuby)的更多细节,但我还没有找到太多。谁能解释一下这个话题?

有帮助吗?

解决方案

Strata 并不真正适合 Scala 或 JRuby,因为它们直接编译为字节码,因此 SourceFile 和 LineNumberTable 属性就足够了。Strata 适用于 JSP 之类的内容,这些内容被转换为 Java 源文件并进行编译。这些层由存储在 SourceDebugExtension 属性中的源映射 (SMAP) 定义。这一切如何运作的细节是 JSR-45. 。另一个例子是 状态机编译器 虽然我不相信它会生成 SMAP。我也不确定 javac 是否有在类文件中嵌入 SMAP 的选项。然后您需要一个单独的工具来完成此操作。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top