harmony-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Ivan Popov" <ivan.g.po...@gmail.com>
Subject [jdktools][jpda] Adapt Eclipse JDI implementation to complete JPDA support in Harmony
Date Fri, 20 Apr 2007 10:05:26 GMT
I'd like to start discussion about JPDA (Java Platform Debug
Architecture [1]) support in Harmony. JPDA is de-facto standard for
Java debug interface and is used by most Java debuggers. JPDA
specification [2] is included into J2SE docs (but not in the core API
spec) and is implemented in all commercial JDKs.

Harmony already implements two underlying JPDA layers - JVMTI and
JDWP, but it misses implementation of the high layer - JDI (Java Debug
Interface [2]), which is used directly by Java debuggers. Currently,
Harmony works well with Eclipse debugger, because Eclipse uses its own
JDI implementation. But other Java debuggers (e.g., in Netbeans,
JBuilder, and Idea IDEs) won't work with Harmony, because it lacks
JDI. Netbeans 5.5 started on Harmony JDK produces several complains
about missed JDI and disables all modules related to debugging. I'm
not sure if Java TCK checks for JDI API, as it looks like optional
component, but having JDI implementation may also facilitate passing

The easiest way to implement JDI in Harmony is to adapt existing JDI
implementation from Eclipse, as was already done for Eclipse Java
compiler. I don't think there are any legal issues here and this looks
easy from technical perspective.

JDI implementation is included into Eclipse JDT runtime bundle,
available on Eclipse download page [3]. JDI-related jars can be
extracted and used separately from other Eclipse stuff. Adding them to
Harmony JDK will provide Harmony with JDI implementation and enable
Java debuggers other than Eclipse.

If nobody objects to this approach I volunteer to work on technical
details and provide required patches.

Ivan Popov
Intel Enterprise Solutions Software Division

[1] http://java.sun.com/javase/technologies/core/toolsapis/jpda/
[2] http://java.sun.com/j2se/1.5.0/docs/guide/jpda/index.html
[3] http://download.eclipse.org/eclipse/downloads/drops/R-3.2.2-200702121330/

View raw message