The idebug command
starts both the Distributed Debugger interface and the debug engine when debugging a
program locally. When debugging remotely, it is used to connect to a debug engine daemon
on a remote system or to start the Debugger user interface as a daemon on your local
system.
The idebug command has the following syntax for
AIX or Windows:
idebug [idebug_options] [local_debug_parameters | remote_debug_parameters | ui_daemon_parameters] [--] [program_name [program_parameters]]
This page contains discussions of the following categories of idebug parameters:
The idebug_options are zero or more of the following:
Option | Purpose |
---|---|
-a process_id | Attach to the already running process process_id.
|
-a | Invoke the Attach dialog. |
-s | This option can only be used in conjunction with
-a.
Prevents the Debugger from stopping in the first debuggable statement in the program. Program execution only stops when the first set breakpoint is encountered. This option requires that the program you want to debug has program profile information available. If no program profile information is available, or you specify the -p- option, the program will run to completion. |
![]() |
Start debugging the specified child process of the program being debugged. This option only applies to the program you are debugging on OS/2, and is ignored on other platforms. |
-h or -? | Display help for the idebug command. |
-i | Start the Debugger in the system initialization code that
precedes the call to the main entry point for the program.
|
-p+ | Use program profile information. The Debugger will restore
the monitors, fonts, and breakpoints that were associated with your program
during its last debug session. If you are debugging the program for the first time, the Debugger
windows start up with their default appearance, and no breakpoints are set. Any changes you make to the monitors and breakpoints are saved. Note: If you add or delete lines in your source file, recompile it, and then debug the program again with a saved program profile, line breakpoints may no longer match the code they were initially set for because line breakpoint information is saved by line number, not by the content of the line. If the Debugger has saved a profile of the breakpoint and monitor settings from a previous debug session for this program, the profile is used to restore those settings. This is the default setting for the Debugger. |
-p- | Do not use program profile information. The Debugger ignores any program profile information, and the Debugger windows start up with their default appearance, and no breakpoints are initially set. |
-qquiet | Suppresses the splash screen when the Debugger starts. Also suppresses the Debugger daemon waiting dialog when used with the -qdaemon and -quiport options. |
-qnewsession | Starts a new debug session rather than reusing an existing session. |
-qterminate | Closes any running Debugger user interfaces or user interface daemons. |
Use the local_debug_parameters when you want to start debugging a program on your local system. If a parameter is not specified in the command, the default is assumed.
The local_debug_parameters are:
Parameter | Description | ||||||||
---|---|---|---|---|---|---|---|---|---|
![]() ![]() |
-qlang=dominant_language
Specifies the dominant programming language to use for debugging. The valid values are shown in the table below:
|
||||||||
![]() |
-classpath=path Specifies a temporary classpath for the Debugger to use to find the Java classes you are debugging. This parameter can only be used when debugging interpreted Java programs. If this is not specified, the Debugger uses your present CLASSPATH environment variable setting to find the Java classes you are debugging. |
||||||||
![]() |
-qfilter=filename Specifies the file that lists the packages not to be debugged. |
||||||||
![]() |
-qjvmargs=jvm_arguments
Specifies the arguments passed to the JVM that will run the program you want to debug. If you specify more than one option, enclose the list of options in quotation marks. This parameter can only used when debugging interpreted Java programs. |
||||||||
![]() |
-password=jvm_password or jvm_port
Specifies the agent port or password provided by the Java Virtual Machine (JVM) upon startup.
Used in conjunction with -host and -a0 to attach to a running JVM. This password is printed
when you start your Java program using one of the following commands: |
||||||||
![]() |
-host=jvm_hostname Specifies the name or address of the machine where the Java Virtual Machine(JVM) that you wish to attach to is running. If the JVM is running on the same machine where the user interface will run, use "localhost". Used in conjunction with -password and -a0. |
Use the remote_debug_parameters when you want to connect to a debug engine daemon on a remote system. If a parameter is not specified in the command, the default is assumed.
The remote_debug_parameters are:
Parameter | Description | ||||||||
---|---|---|---|---|---|---|---|---|---|
![]() ![]() ![]() ![]() |
-qhost=remote_host
Required parameter that specifies the TCP/IP name or address of the machine where the debug engine is running. |
||||||||
![]() ![]() |
-qport=host_port
Specifies the port number on the machine where the debug engine is running. The default port is 8000. This port number must match the port number used in the -qport parameter of the irmtdbgc command.
|
||||||||
-qlang | -qlang=dominant_language
Specifies the dominant programming language to use for debugging. The valid values are shown in the table below:
|
The ui_daemon_parameters are used when starting the Distributed Debugger user interface as a daemon. When running as a daemon, the Distributed Debugger user interface listens on a specific port number for a debug engine. Once a connection is made, the Distributed Debugger user interface appears and you can begin debugging your program. The ui_daemon_parameters are:
Parameter | Description | ||||||||
---|---|---|---|---|---|---|---|---|---|
-qdaemon | Tells the Distributed Debugger user interface to run as a daemon. You must
use the -quiport option when specifying -qdaemon. If this option is not specified, the Distributed Debugger does not listen for connections from Debugger engines. |
||||||||
-qlang | -qlang=dominant_language
Specifies the dominant programming language to use for debugging. The valid values are shown in the table below:
|
||||||||
-quiport | -quiport=port
Specifies the port numbers where the Distributed Debugger user interface daemon should listen for a debug engine. You can specify a single port or multiple ports. When specifying multiple ports, <port> must be a comma-delimited list of port numbers. This option is required when using the -qdaemon option. There is no default port number.
|
||||||||
-qterminate | Closes any running Debugger user interfaces or user interface daemons. |
Use the "--" parameter to separate Debugger options and parameters from the program name and parameters. Use this option if your program name or parameters include forward slashes ("/") or dashes ("-"). If you do not use this option, anything preceded by a slash or a dash will be interpreted as a Debugger option.
If you do not specify program_name when issuing the idebug command, the Debugger will prompt you for the required information in the Load Program dialog.
Starting the Debugger for
local debugging
Starting
the debugger for debugging compiled languages remotely
Starting
the debugger for debugging interpreted Java remotely
Attaching to a running Java Virtual Machine
irmtdbgc command
irmtdbgj
command
Supported
Java Virtual Machine arguments