Section: Troubleshooting Tools (1)
Updated: 21 November 2013
jsadebugd - Attaches to a Java process or core file and acts as a debug server. This command is experimental and unsupported.
jsadebugd pid [ server-id ]
jsadebugd executable core [ server-id ]
The process ID of the process to which the debug server attaches. The process must be a Java process. To get a list of Java processes running on a machine, use the jps(1) command. At most one instance of the debug server can be attached to a single process.
The Java executable from which the core dump was produced.
The core file to which the debug server should attach.
An optional unique ID that is needed when multiple debug servers are started on the same machine. This ID must be used by remote clients to identify the particular debug server to which to attach. Within a single machine, this ID must be unique.
command attaches to a Java process or core file and acts as a debug server. Remote clients such as jstack
, and jinfo
can attach to the server through Java Remote Method Invocation (RMI). Before you start the jsadebugd
command, start the RMI registry with the rmiregistry
command as follows where $JAVA_HOME
is the JDK installation directory:
If the RMI registry was not started, then the jsadebugd command starts an RMI registry in a standard (1099) port internally. The debug server can be stopped by sending a SIGINT to it. To send a SIGINT press Ctrl+C.
Note: This utility is unsupported and may or may not be available in future releases of the JDK. In Windows Systems where dbgeng.dll is not present, Debugging Tools For Windows must be installed to have these tools working. The PATH environment variable should contain the location of jvm.dll used by the target process or the location from which the crash dump file was produced. For example, set PATH=%JDK_HOME%\jre\bin\client;%PATH%.