JSDT Debug Bundles
The JSDT debugger is broken down into the following bundles:
- org.eclipse.wst.jsdt.debug.core - the JSDI specification and debug model elements.
- org.eclipse.wst.jsdt.debug.chrome (incubation) - contains a ChromeDevTools implementation of the debugger.
- org.eclipse.wst.jsdt.debug.crossfire (incubation) - contains a Crossfire implementation of the debugger.
- org.eclipse.wst.jsdt.debug.rhino - a Rhino implementation of the debugger.
- org.eclipse.wst.jsdt.debug.rhino.debugger - the Rhino debug hooks to connect to the Rhino interpreter.
- org.eclipse.wst.jsdt.debug.rhino.ui - the UI presentation for Rhino.
- org.eclipse.wst.jsdt.debug.transport - the debug protocol transport classes.
- org.eclipse.wst.jsdt.debug.ui - contains the shared UI presentation for the debugger implementations.
- org.eclipse.wst.jsdt.debug.core.tests - contains related test cases for the debug core.
- org.eclipse.wst.jsdt.debug.rhino.tests - contains Rhino specific tests.
A team project set file for JSDT debug can be found here.
All things related to hacking the code and using the tools can be found in this section.
Rhino Debug Wire Protocol
To provide support for the Rhino interpreter, we had to create both sides of the coin - the debugger and the client. To facilitate communication between the debugger and the client we created an adapted version of v8 (JSON-based) packet communication. The complete specification for the RDWP can be found here.
The JSDI is used to provide a common way for our models and UI to communicate with a variety of debugger back-ends - write one UI + model and provide additional debuggers.
Up To The Minute
JSDT Debug is preparing to release version 3.2.1!