Java Platform Debugger Architecture
Java APIs for debugging

The Java Platform Debugger Architecture (JPDA) is a collection of APIs to debug Java code.
- Java Debugger Interface (JDI), defines a high-level Java language interface that developers can easily use to write remote debugger application tools.
- Java Virtual Machine Tools Interface (JVMTI), a native interface that helps to inspect the state and to control the execution of applications running in the Java Virtual Machine (JVM).
- Java Virtual Machine Debug Interface (JVMDI), JVMDI was deprecated in J2SE 5.0 in favor of JVM TI, and was removed in Java SE 6.
- Java Debug Wire Protocol (JDWP), defines communication between debugger and debuggee (a Java application) processes.
01Java Debugger Interface (JDI)
JDI is the highest-layer of the Java Platform Debugger Architecture. It allows to access the JVM and the internal variables of the debugged program. It also allows to set breakpoints, stepping, and handle threads.
Sources and credits
This article is adapted from the Wikipedia article “Java Platform Debugger Architecture”, written by its contributors and licensed under CC BY-SA 4.0. Fathomly has changed the layout, removed citation markers, navigation and maintenance notices, and adjusted punctuation. This adapted version is shared under the same license. For references, see the original article.
Images, from Wikimedia Commons:
- JPDA architecture.png by Hervegirod (talk) (Uploads), PD
Fathomly is not affiliated with or endorsed by the Wikimedia Foundation. Spotted a problem? Tell us.