0

任意の変数またはオブジェクトへのすべての実行時アクセスをログに記録する必要がある 現在の方向性は、変更されたバイトコードでクラスファイルをマークアップすることです パフォーマンスは現在問題ではありません

BCEL は、バイトコード内の関連する各オペコードにいくつかのトレース命令を追加するのに適しています。

ただし、ソース ファイルからセマンティック情報を追加したいと思います。たとえば、この変数は for ループ カウンターです。これには、AST / 構文解析ツリーの操作が必要になります。

では、ASM / JavaAssist はより良い選択ですか ???

変数の使用状況をログに記録することが重要な要件であるため、バイトコードはこれを処理するのに適切なレベルに見えます。しかし、最終的にはソース解析ツリーにアクセスして、より多くのセマンティック情報を取得する必要があります

何かご意見は ?

psこれは大規模な長期プロジェクトになります

4

1 に答える 1

0

JavaSnoop ( https://www.aspectsecurity.com/research/appsec_tools/javasnoop/ ) を調べます。関数呼び出しを監視するのに役立ちます。

于 2012-05-12T16:57:41.147 に答える