Java Platform Debugger Architecture
- 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 debuggee (a Java application) and debugger processes.
Java 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.
- Eclipse, an open-source IDE integrated with JPDA support
- IntelliJ IDEA, a commercial open-source Java IDE with integrated JPDA support
- JSwat, an open-source Java debugger using the JPDA
- NetBeans, an open-source IDE using the JPDA
Original source: https://en.wikipedia.org/wiki/ Java Platform Debugger Architecture. Read more