Skip to main content
Jump to: navigation, search

JSDT/Debug/Rhino

< JSDT‎ | Debug
Revision as of 15:17, 14 January 2011 by Michael Rennie.ca.ibm.com (Talk | contribs) (Include Paths)

JSDT Debug
Website
Download
Community
Mailing ListForumsIRCmattermost
Issues
OpenHelp WantedBug Day
Contribute
Browse SourceProject Set File

Local Rhino Debugging

New to 1.3 is the ability to locally launch and debug JavaScript file(s) using Rhino. This new launching support includes context-sensitive launching from the platform and automatic source / script path updating.

The related New and Noteworthy entry is here.

Launch Configurations

Include Paths

The Include tab for a Rhino configuration allows you to quickly and easily add additional scripts to be run before the main script.

You have the option to add one or more scripts from the workspace or from the local or extended file system.

Using the Up and Down buttons you can place the scripts in the order you would like them to be run. The script at the top of the listing will be run first. You can also use the Remove button to remove the selected included scripts from the listing.

Any scripts that are added to the include path also have their containing folder automatically added to the source lookup path. For example if you added the script /home/user/myscript.js to the include path, the folder entry for /home/user/ would be added to the source lookup path for you automatically.

Launch Options

Embedding the Rhino Debugger

One of the more powerful usages of the Rhino debug support is that it can easily be embedded into your existing server. Embedding the Rhino Debugger allows you to remotely debug the loading and execution of scripts from the Eclipse IDE.

To learn how to embed the Rhino Debugger please go to this page.

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.

Back to the top