>>>>
Help in correctly setting up JDE 2.1.6beta15 for use with Emacs 20.4, JDK 1.2.2, and JDPA 1.0 for use of JDEbug.<<<<
I am new to Emacs and JDE, and I was wondering if someone wouldn't mind sharing a working setup for the JDE 2.1.6beta15 for the configuration listed in the Subject for use on NT4.0 SP4? I have been slowly piecing together the differences from the JDE 2.1.5 from the mailing list archive and the release notes, but have still had some problems.
You have to set the following customization variables correctly. Use Emacs customize
facility (e.g., M-x customize-variable variable-name) to ensure that you do set them correctly.
jde-debugger
jde-bug-jpda-directory
jde-bug-vm-includes-jpda-p (set off)
jde-global-classpath
jde-run-application-class (Fully qualified name of main class for debuggee process)
jde-db-source-directories (List of source directories for stepping through code)
VERY IMPORTANT: include the path of the JDPA bin directory in your system's command path.
Otherwise, your system will not be able to find the dll containing the JPDA native code.
>>>>
I am also wondering how the Attach Process > On Local/Remote Host is used to connect up with a webserver (in my case, the Weblogic 4.5.1 App server)?<<<<
There are two ways to attach the debugger to an existing process on Windows: via a socket and
via shared memory if both processes run on the same host. The shared memory connection is much
faster and thus is preferable. In either case, the existing process must have been started with certain debug options set.
To attach via a socket:
1. Launch the debuggee process with the following vm command line arguments:
-Xrunjdwp:transport=dt_socket,address=NNNN,server=y,suspend=n -Xdebug
where NNNN is any unused socket address on the host processor for the debuggee process.
See jde-run-option-vm-args for information on how to specify vm arguments when
launching an application from the JDE.
2. Execute JDEbug->Processes->Start Debugger to start the debugger (if necessary).
3. Execute JDEbug->Processes->Attach Process->Local Host or Remote Host to attach the
debugger to a local or remote process, respectively.
In the first case, the JDE prompts you to enter the socket address that you specified
in step 1. In the second case, the JDE also prompts you to enter the name of the
host on which the remote process is running.
To attach via shared memory:
1. Launch the debuggee process with the following vm command line arguments:
-Xrunjdwp:transport=dt_shmem,address=NAME,server=y,suspend=n -Xdebug
where NAME is a string identifying the process, e.g., webserver.
See jde-run-option-vm-args for information on how to specify vm arguments when
launching an application from the JDE.
2. Execute JDEbug->Processes->Start Debugger to start the debugger (if necessary).
3. Execute JDEbug->Processes->Attach Process->Via Shared Memory to attach the
debugger to the process started in step 1.
The JDE prompts you to enter the NAME you specified in step 1.
Note that you can attach/detach from a running process as many times as you want
during a session.
- Paul
