## JDT Debug

JDT Debug is comprised of several plug-ins that support the running and debugging of Java code.

- org.eclipse.jdt.launching is the plug-in that defines the Java launching and runtime support. You will require this plug-in if you need to launch Java virtual machines programmatically. The JDT launching is closely tied to the platform launching facility, which is described in Launching a program.

  The package org.eclipse.jdt.launching provides classes for launching Java runtimes from the platform. JavaRuntime implements static methods to access registered VMs and compute runtime classpaths and source lookup paths. A family of VM's (such as the JDK) is represented by the IVMInstallType class. IVMInstall represents particular installations within a family. The IVMRunner is used to start a particular Java VM and register its processes with the debug plug-in.

  The package org.eclipse.jdt.launching.sourcelookup.containers defines classes for locating source code elements in the file system.

  The package org.eclipse.jdt.launching.sourcelookup.advanced defines classes for locating source code elements in the file system or on-demand download using advanced source lookup.

- org.eclipse.jdt.debug is the plug-in that defines the Java debug model. You will require this plug-in if you need to programmatically access objects in a program being debugged. The JDT debug model is closely tied to the platform debug model, which is described in Platform debug model.

  The package org.eclipse.jdt.debug.core supports a Java debug model based on JDI/JDWP that can be used for controlling a Java program under debug.

  The package org.eclipse.jdt.debug.eval provides infrastructure for evaluating Java expressions and reporting results.

- org.eclipse.jdt.debug.ui is the plug-in that defines the Java debug UI extensions. Most of the debugger API is provided by the platform debugger infrastructure described in Debug model presentation and Debug UI utility classes. The Java debug UI API focuses on accessing the prompting source locator and Java launch configuration tabs.

  The package org.eclipse.jdt.debug.ui.launchConfigurations defines the launch configuration tabs for local and remote Java applications.