JSDT/Debug/JavaScript Debug Interface

From Eclipsepedia

< JSDT‎ | Debug
Jump to: navigation, search
JSDT Debug
Website
Download
Community
Mailing ListForumsIRC
Bugzilla
Open
Help Wanted
Bug Day
Contribute
Browse SourceProject Set File

Contents

Overview

The JSDI specifies a format in which a debugger can communicate with a running virtual machine (VM). This includes describing methods to connect the VM and debugger, what events the vm can send to describe changes in state, what requests the debugger can make to alter the state and what values can be used to describe the state.

The JSDI specification is based on the Java Debug Interface specification.

Connectors

A connector is a method of connecting a debugger and a VM. Connectors must provide an ID and may have a name and description. To customize the behaviour of the connector a map of arguments may be provided, mapping string argument keys to their values.

JSDI specifies three forms of connectors

  1. Listening Connector - When launched, waits for a vm to connect
  2. Attaching Connector - Connects to an already running VM
  3. Launching Connector - Launches a VM and connects to it

See package org.eclipse.wst.jsdt.debug.core.jsdi.connect

Events

The VM will fire events to inform the debugger of changes in state. The following events can be send by the VM:

  • VM Death
  • VM Disconnect
  • Breakpoint
  • Debugger Statement
  • Exception
  • Script Load
  • Step
  • Suspend
  • Thread Enter
  • Thread Exit

See package org.eclipse.wst.jsdt.debug.core.jsdi.event

Requests

The debugger can create and send requests to the VM through the JSDI to get more information on the state of the VM or to modify it. The following types of requests are supported:

  • VM Death
  • VM Disconnect
  • Breakpoint
  • Debugger Statement
  • Exception
  • Script Load
  • Step
  • Suspend
  • Thread Enter
  • Thread Exist

See package org.eclipse.wst.jsdt.debug.core.jsdi.request

Values

The following value types are specified by the JSDI.

  • Null
  • Undefined
  • Object Reference
    • Object reference
    • Array reference
    • Function reference
  • Boolean
  • Number
  • String

See package org.eclipse.wst.jsdt.debug.core.jsdi