2

ASMを使用してメソッドのローカル変数を検査するにはどうすればよいですか? これはリフレクションでは不可能であることを理解しています。

4

1 に答える 1

1

http://asm.ow2.org/eclipse/index.html

「エディタとのリンク」がオンの場合、Java エディタで選択すると、適切なバイトコード ラベルが選択されます。逆も同様です。


注:この双方向選択は、バイトコードにソース行/ローカル変数情報が含まれている場合にのみ機能します。コンパイラがデバッグ情報を生成するかどうかわからない場合は、コンパイラの設定を確認してください。

" show raw bytecode" がオフの場合、インデックスの代わりにローカル変数名が表示され、完全修飾名が単純なクラス名に置き換えられ、プリミティブ型の省略形が読み取り可能な名前にデコードされます。

" show current element only" がオンの場合、現在のフィールド/メソッド ノードのバイトコードのみが表示されます (カーソルがフィールド/メソッド名または本体内にある場合)。

詳細については、著者のホームページ(ソース) を参照してください。

于 2012-06-29T05:47:15.063 に答える