「-g:vars」オプションを使用してクラス ファイルを生成しようとしています。これはクラスに対して正常に機能しており、ソースにあるパラメーター名を取得します。しかし、これはインターフェイスでは機能していないようです。
例 インターフェイス パブリック インターフェイス テスト
{
public abstract void doesntWork(String name, String last, int id);
}
=======生成==========
// (version 1.6 : 50.0, no super bit)
public abstract interface Test {
// Method descriptor #4 (Ljava/lang/String;Ljava/lang/String;I)V
public abstract void doesntWork(java.lang.String arg0, java.lang.String arg1, int arg2);
}
その間...
public class Test
{
public void doesntWork(String name, String last, int id) {}
}
===========生成 (関連部分のみ表示)============
public void doesntWork(java.lang.String name, java.lang.String last, int id);
0 return
Local variable table:
[pc: 0, pc: 1] local: this index: 0 type: Test
[pc: 0, pc: 1] local: name index: 1 type: java.lang.String
[pc: 0, pc: 1] local: last index: 2 type: java.lang.String
[pc: 0, pc: 1] local: id index: 3 type: int
これは、ローカル変数テーブルがインターフェイスに適用できないという事実によるものだと思います。インターフェイスの場合と同様に、デバッグ情報を取得するにはどうすればよいですか?