Java Platform Debugger Architecture (JPDA)

The Java Platform Debugger Architecture (JPDA) consists of three
interfaces designed for use by debuggers in development
environments for desktop systems. The Java Virtual Machine Tools
Interface (JVM TI) defines the services a VM must provide for
debugging. The Java Debug Wire Protocol (JDWP) defines the format
of information and requests transferred between the process being
debugged and the debugger front end, which implements the Java
Debug Interface (JDI). The Java Debug Interface defines information
and requests at the user code level.