Showing posts with label JDWP. Show all posts
Showing posts with label JDWP. Show all posts

Wednesday, 4 February 2009

Debugging the Java Debug Wire Protocol: No Transports Initialized

JDWP sometimes kicks up problems.

e.g.

FATAL ERROR in native method: JDWP No transports initialized, jvmtiError=AGENT_ERROR_TRANSPORT_INIT

(transports allow the debugger or VM to act as a server).

Asynchronous protocol, debugger sends 14 bytes, VM replies with 14 bytes (handshake). Communication then takes place via command packets (which can be sent by debugger or VM) and reply packets. Reply packets are sent in response to command packets (to indicate success or failure).

All fields and data is sent in big-endian format (higher-order byte at the lowest address, big end comes first). Just like Adobe Photoshop. Little endian seems more natural.

JDWP facilitates the remote debugging of Java programs.

Thursday, 8 January 2009

Java Debugging - The Java Debug Wire Protocol

The JDWP (JD WordPerfect or "Java Debug Wire Protocol") is the protocol a debugger uses to communicate with a JVM (which may be on a different machine). It's one layer within the JPDA. It's worth knowing the basic architecture of the JPDA.