harmony-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Nathan Beyer" <ndbe...@apache.org>
Subject Re: Eclipse doesn't find harmony sources
Date Wed, 25 Apr 2007 00:32:35 GMT
On 4/24/07, Wayne Beaton <wayne@eclipse.org> wrote:
> When you add a JRE to Eclipse, it scans the JRE's directory for JAR files.
> For each JAR file it finds, it looks for corresponding source. It does so by
> climbing up the containment hierarchy looking for a file named "src.jar" or
> "src.zip" (if you're curious, see
> org.eclipse.jdt.internal.launching.StandardVMType#getDefaultSystemLibrarySou
> rce()).
> Harmony JDK doesn't store is source this way (it seems to include the
> sources alongside the JAR files), so Eclipse doesn't find it (which means
> that if, for example, you browse the class java.lang.String, you get a
> "can't find the source" message in your editor).
> Is there a special reason why Harmony sources are represented the way they
> are? Is there any way to bundle 'em all up into a src.zip file?

No special reason, that I know of. Personally, I would consider the
JRE's source bundling to be the odd ball (Eclipse source distribution
is also a little weird and a personal pain point, but that's another
story). I would consider packaging sources the way Harmony does a
defacto standard; every JAR has a companion source JAR. In fact build
systems like Maven default to this practice.

> In a related question, I'm not sure that putting them in the "jre" directory
> is the right approach. I tend to think of the JRE directory as containing
> *only* the JRE (i.e. I could yank it out and use it as a JRE) and the
> sources--being part of the JDK--are outside of that directory.
> I also can't find the source for kernel.jar. Where is Object.java,
> Class.java, etc.?

Good question. There maybe a missing step here in our build scripts.
All of the other source JARs are part of the "classlib" build, but
kernel.jar is produced (implemented) by the VM, so this would be part
of the "drlvm" build. I'll look into this one.

> I can understand why you'd want to have the sources in different files.
> Eclipse handles J9 specially. It's probably time to generalize it's
> implementation to handle arbitrary source configurations (perhaps via
> extension point).

Yes please!

> Wayne
> --
> Wayne Beaton
> The Eclipse Foundation
> wayne.beaton@eclipse.org
> Skype, YIM: waynebeaton
> http://www.eclipse.org
> http://wbeaton.blogspot.com/
> http://www.planeteclipse.org/planet/

View raw message