|
Java Debug Interface | |||||||||
| 前のクラス 次のクラス | フレームあり フレームなし | |||||||||
| 概要: 入れ子 | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド | |||||||||
ターゲット Virtual Machine への接続を管理するマネージャです。
VirtualMachineManager を使用すると、1 つのアプリケーションから複数のターゲット
VM をデバッグすることができます。ただし、この逆はサポートされていません。つまり、
ターゲット VM は、複数のデバッガアプリケーションからデバッグすることはできません。
このインタフェースには、リモートターゲット VM への接続を管理するメソッド、および
使用可能なターゲット VM の VirtualMachine ミラーを取得するメソッドが
組み込まれています。
接続の確立に使用するオブジェクトは、いくつかの
Connector オブジェクトから選択できます。各コネクタに
は、デバッガをターゲット VM に接続する方法がカプセル化されています。
VirtualMachineManager では、デバッガを Virtual Machine に接続するための複数の
方法がサポートされています。次の表に、4 つの例を示します。これらの例では、Sun の
従来の VM で採用されていたコマンド行構文を使用します。
Connector の実装を使用する場合は、これらの例とは
異なる操作が必要になります。
| デバッガからターゲット VM を起動する (もっとも簡単で一般的な方法) | デフォルトのコネクタの
LaunchingConnector.launch(java.util.Map) メソッドを
呼び出す。デフォルトのコネクタは、defaultConnector() を使用して
取得できる。ターゲット VM が起動し、その VM とデバッガ間の接続が確立される。
VirtualMachine ミラーが返される
より詳細に制御することも可能
|
| デバッガから稼動中の VM に接続する |
|
| ターゲット VM からすでに稼動中のデバッガに接続する |
listeningConnectors()
によって返されるリストから 1 つまたは複数のコネクタを選択するListeningConnector.startListening(java.util.Map)
メソッドを呼び出す。各呼び出しに対してトランスポート固有のアドレス文字列が生成
され、返される。エンドユーザに、トランスポート名と対応するアドレス文字列が提供
される
ListeningConnector.accept(java.util.Map) を呼び出し、
ターゲット VM の接続を待機する-Xrunjdwp:transport=xxx,address=yyy -Xdebug -Xnoagent -Djava.compiler=NONE
オプションを使用して、ターゲット VM を起動する。「xxx」は、デバッガが選択した
コネクタ。「yyy」は、
ListeningConnector.accept(java.util.Map) によって、
そのトランスポートに対して生成されたアドレスListeningConnector.accept(java.util.Map) を呼び出し、
VirtualMachine ミラーが返される |
| ターゲット VM からデバッガを起動する (「Just-In-Time」デバッグと呼ばれる こともある) |
-Xrunjdwp:launch=cmdline,onuncaught=y,transport=xxx,server=y
オプションを使用して起動される
attachingConnectors() によって返されるリストからコネクタを選択する
Connector.defaultArguments() によって取得した
デフォルトのコネクタのパラメータを変更して、VM が待機するトランスポート固有の
アドレスを指定する。オプションで、ほかのコネクタの引数もユーザに提供できる
AttachingConnector.attach(java.util.Map) メソッドを
呼び出し、ターゲット VM に接続する。VirtualMachine ミラーが返される
|
| メソッドの概要 | |
List |
allConnectors()
既知のすべての Connector オブジェクトのリストを
返します。 |
List |
attachingConnectors()
既知の AttachingConnector オブジェクトのリストを
返します。 |
List |
connectedVirtualMachines()
デバッガに接続されるすべてのターゲット VM のリストを作成します。 |
LaunchingConnector |
defaultConnector()
デフォルトのコネクタを識別します。 |
List |
launchingConnectors()
既知の LaunchingConnector オブジェクトのリストを
返します。 |
List |
listeningConnectors()
既知の ListeningConnector オブジェクトのリストを
返します。 |
int |
majorInterfaceVersion()
JDI インタフェースのメジャーバージョン番号を返します。 |
int |
minorInterfaceVersion()
JDI インタフェースのマイナーバージョン番号を返します。 |
| メソッドの詳細 |
public LaunchingConnector defaultConnector()
LaunchingConnectorpublic List launchingConnectors()
LaunchingConnector オブジェクトのリストを
返します。返されたオブジェクトから任意のオブジェクトを選択して、新しいターゲット
VM を起動することができます。ただちに、VirtualMachine ミラーが作成
されます。
LaunchingConnector オブジェクトのリストpublic List attachingConnectors()
AttachingConnector オブジェクトのリストを
返します。返されたオブジェクトから任意のオブジェクトを選択して、既存のターゲット
VM に接続することができます。VirtualMachine ミラーが作成されます。
AttachingConnector オブジェクトのリストpublic List listeningConnectors()
ListeningConnector オブジェクトのリストを
返します。返されたオブジェクトから任意のオブジェクトを選択して、ターゲット VM
によって開始された接続を待機できます。 VirtualMachine ミラーが作成され
ます。
ListeningConnector オブジェクトのリストpublic List allConnectors()
Connector オブジェクトのリストを
返します。
Connector オブジェクトのリストpublic List connectedVirtualMachines()
VirtualMachine インスタンスが含まれます。
ターゲット VM は、VM の接続が解除されるとこのリストから削除されます。リストから
VM が削除されると、VMDisconnectEvent は
イベントキューに配置されます。
VirtualMachine オブジェクトの
リストpublic int majorInterfaceVersion()
VirtualMachine.version() のターゲット VM バージョンと情報、および
VirtualMachine.description() を参照してください。
public int minorInterfaceVersion()
VirtualMachine.version() のターゲット VM バージョンと情報、および
VirtualMachine.description() を参照してください。
|
Java Debug Interface | |||||||||
| 前のクラス 次のクラス | フレームあり フレームなし | |||||||||
| 概要: 入れ子 | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド | |||||||||