JDeveloperでは、コマンドラインを介したGUIアプリケーションのリモート・デバッグをサポートしています。そのためには、デバッグ対象のプログラム(デバッグ・プロセス)を手動で起動する必要があります。デバッグ・プロセスが起動してJDeveloperデバッガがアタッチされた後のリモート・デバッグは、ローカル・デバッグとほとんど同じです。
UIのリモート・デバッグの実行方法は、アプリケーションのリモート・デバッグに似ています。最初に、次の要件が満たされていることを確認してください。
jdev-remote.jar
を追加すること。
GUIアプリケーションのリモート・デバッグを実行する手順は、次のとおりです。
デバッグ用のプロジェクトを構成して、リモート・デバッグに使用可能であることを確認します。
次のコマンドを実行してアプリケーションを手動で起動します。
java -ojvm -XXdebug -cp ...¥jdev¥lib¥jdev-remote.jar
oracle.jdevimpl.runner.uidebug.debuggee.Debuggee <MainClass>
各オプションの説明は、次のとおりです。
...¥jdev¥lib¥jdev-remote.jar
は、JDeveloperランタイム・ライブラリのクラスパスです。これをコマンドに追加する必要があります。
oracle.jdevimpl.runner.uidebug.debuggee.Debuggee
は、UIデバッガのエージェントのメイン・クラスの名前です。
コマンド・ウィンドウに次のようなメッセージが出力されます。
*** Port is 4000 ***
*** Waiting for OJVM debugger connection. ***
UIデバッガはソケットを使用してアプリケーションと相互作用します。ソケットのデフォルトのポート番号は4030
ですが、次のようにアプリケーションのメイン・クラスの前に-uidport,<port>
を挿入すると、別のポート番号を指定できます。
java -ojvm -XXdebug -cp ...¥jdev¥lib¥jdev-remote.jar
oracle.jdevimpl.runner.uidebug.debuggee.Debuggee -uidport,5678 mypackage1.Application1
この場合、JDeveloper IDEでUIデバッガを起動するときにもポート番号を指定する必要があります。
リモート・デバッグ用に設定した実行構成を選択します(「実行」 「アクティブな実行構成を選択」)。
「デバッグ」 「UIデバッグ<project_name>.jpr」を選択します。
Javaアプリケーションのメイン・メソッドが起動します。
「OJVMにアタッチ」または「JPDAにアタッチ」ダイアログが表示され、ホスト名とUIデバッガ・ポートを指定するように要求されます。-uidport
オプションを使用しなかった場合は、この値をデフォルトの4030
のままにする必要があります。
UIデバッグ・セッションの動作は、UIのローカル・デバッグを実行する場合と同じです。
任意のUIデバッガ・タスクの実行を開始できます。
Copyright © 1997, 2006, Oracle. All rights reserved.