2012-01-02 20 views
2

Java Debug Interface APIを使用して、私が書いたJavaアプリケーションをデバッグするカスタムプログラムを記述しています。私は、ソースファイル内の任意の場所のための場所のオブジェクトを取得する方法を作ることができませんしかしJava Debug Interface:コード内の任意の場所にブレークポイントを設定します。

ReferenceType classRef = vm.classesByName(className).get(0); 
Method meth = classRef.methodsByName(methodName).get(0); 
BreakpointRequest brF1 = vm.eventRequestManager().createBreakpointRequest(meth.location()); 
brF1.enable(); 

:私は、ようなコードを使用して、必要なメソッド呼び出しの先頭にブレークポイントを追加することができています。

+0

IDEでデバッガを使用しないのはなぜですか? –

+0

http://docs.oracle.com/javase/6/docs/jdk/api/jpda/jdi/com/sun/jdi/ReferenceType.html#locationsOfLine%28int%29 –

答えて

3

Locationは、ソースファイル内の他の場所に取得する方法はいくつかあります。

E. gを、Methodこのためのいくつかの操作があります。

  • allLineLocations() + 1過負荷
  • locationsOfLine(int line) +いくつかのオーバーロード

もするReferenceTypeは、このための操作を有します。 Locationの使用方法を参照してください。

+0

オーバーロードとは何ですか? – WSS

関連する問題