The JSDT debug project brings a variety of JavaScript debugging support to the JSDT using a common UI and communicating using a common protocol - JavaScript Debug Interface (JSDI). The common interface for the debugger emulates that of the platform and JDT debugger to allow a smooth transition and ease of use for the JSDT debugger.
Currently we have debugging support for Rhino and an incubation version of Crossfire / Firebug support.
The JSDT debugger is broken down into the following bundles:
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.
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.
JSDT Debug is preparing to release version 3.2.1!