[kaffe] Turn exception into warning message for ClassLoader.setSigners()

Helmer Krämer hkraemer at freenet.de
Mon Nov 15 04:35:01 PST 2004


On Sun, 14 Nov 2004 13:26:30 +0100
Guilhem Lavaux <guilhem at kaffe.org> wrote:

> Helmer Krämer wrote:
> > On Sat, 13 Nov 2004 22:01:55 +0100
> > Mark Wielaard <mark at klomp.org> wrote:
> > 
> > Hi,
> > 
> > 
> >>With this Eclipse 2.1 starts again, but is not completely usable, while
> >>printing lots of warning messages... (an alternative would be to
> >>actually implement setSigners() by adopting the GNU Classpath
> >>ClassLoader implementation).
> > 
> > 
> > I'll have a look at what needs to be shuffled around to use
> > GNU Classpath's ClassLoader implementation.
> > 
> > Regards,
> > Helmer
> 
> I remember that when I wanted to import ClassLoader I had to import 
> Class too and then Double, ... and all other remaining classes of GNU 
> Classpath.

Looks like things have changed in the meantime. With the attached
patch and VMClassLoader implemenation, I can successfully use the
ClassLoader implementation from GNU classpath. It's not perfect yet,
as it will not unload native libraries that are no longer in use
(no clue how often that happens). Any thoughts?

> The problem is that the Class implementation of GNU Classpath 
> is totally incompatible with kaffe's current implementation which 
> assumes some things (especially the fields) to make the VM work properly 
> (if not at all).

Given that java.lang.Class is merely a wrapper around a VM internal
data structure, I don't see why we should merge java.lang.Class at
all. gcj for example handles java.lang.Class in pretty much the same
way as kaffe does.

> The only option is to transform all references to 
> Hjava_lang_Class in kaffe into a private internal VM structure and use 
> some object/class resolver to translate this representation into a Java 
> representation whenever we need it externally. BTW, this solution will 
> be necessary when we'll want to fix the remaining problems with the 
> boehm-gc merge.

Could you explain what boehm-gc specific problems require a specific
java.lang.Class implementation?

Regards,
Helmer
-------------- next part --------------
A non-text attachment was scrubbed...
Name: VMClassLoader.java
Type: text/x-java
Size: 9512 bytes
Desc: not available
Url : http://pogo.kaffe.org/pipermail/kaffe/attachments/20041115/f84fccd1/VMClassLoader-0001.bin
-------------- next part --------------
A non-text attachment was scrubbed...
Name: classloader-patch
Type: application/octet-stream
Size: 67275 bytes
Desc: not available
Url : http://pogo.kaffe.org/pipermail/kaffe/attachments/20041115/f84fccd1/classloader-patch-0001.obj


More information about the kaffe mailing list