12

Location クラスの Java Debugger Interface ドキュメントには、場所の「階層」について説明している段落があります。新しいストラタム (Scala や JRuby など) を実装する方法について詳しく調べてみましたが、あまり見つかりませんでした。誰でもこのトピックに光を当てることができますか?

4

1 に答える 1

3

Strata は、直接バイトコードにコンパイルされるため、Scala や JRuby には適していないため、SourceFile 属性と LineNumberTable 属性で十分です。Strata は、Java ソース ファイルに変換されてコンパイルされる JSP などを対象としています。階層は、SourceDebugExtension 属性に格納されているソース マップ (SMAP) によって定義されます。これがどのように機能するかの詳細は、JSR-45の一部です。もう 1 つの例はState Machine Compilerですが、これが SMAP を生成するとは思えません。また、javac に SMAP をクラス ファイルに埋め込むオプションがあるかどうかもわかりません。そのための別のツールが必要になります。

于 2010-09-17T03:39:22.083 に答える