Javaプロセスまたはコア・ファイルに接続し、デバッグ・サーバーとして機能します。このコマンドは試験的なものであり、サポート対象外になっています。
jsadebugd pid [ server-id ]
jsadebugd executable core [ server-id ]
デバッグ・サーバーが接続するプロセスのプロセスIDです。プロセスはJavaプロセスである必要があります。マシン上で実行されているJavaプロセスのリストを取得するには、jps
(1)コマンドを使用します。単一のプロセスに接続できるデバッグ・サーバーのインスタンスは、1つに制限されます。
コア・ダンプの作成元になるJava実行可能ファイルです。
デバッグ・サーバーを接続するコア・ファイルです。
複数のデバッグ・サーバーが同一のマシン上で実行されている場合に必要になるオプション固有のIDです。このIDは、リモート・クライアントが、接続先のデバッグ・サーバーを特定するために使用する必要があります。このIDは、単一のマシン内で一意でなければなりません。
jsadebugd
コマンドは、Javaプロセスまたはコア・ファイルに接続し、デバッグ・サーバーとして機能します。jstack
、jmap
、jinfo
などのリモート・クライアントは、Java Remote Method Invocation (RMI)からサーバーに接続できます。jsadebugd
コマンドを起動する前に、次に示すように、rmiregistry
コマンドを使用してRMIレジストリを起動します。ここで$JAVA_HOMEは、JDKのインストール・ディレクトリです。
rmiregistry -J-Xbootclasspath/p:$JAVA_HOME/lib/sajdi.jar
RMIレジストリが起動していない場合、jsadebugd
コマンドは標準(1099)ポートでRMIレジストリを内部的に起動します。デバッグ・サーバーは、SIGINT
を送信することで停止できます。SIGINTを送信するには、Ctrl+Cキーを押します。
注: このユーティリティはサポート対象外であり、将来のJDKリリースでは利用できなくなる可能性があります。dbgeng.dll
が存在していないWindowsシステムでは、Debugging Tools For Windowsをインストールしないとこれらのツールが正常に動作しません。PATH
環境変数に、ターゲット・プロセスで使用されるjvm.dllの場所またはクラッシュ・ダンプ・ファイルが生成された場所を含めるようにしてください。たとえば、s
et PATH=%JDK_HOME%\jre\bin\client;%PATH%
です。