forward-port IMPORT_BINARY_PLUGS to OpenJDK7
Andrew John Hughes
gnu_andrew at member.fsf.org
Thu Oct 23 17:15:49 UTC 2008
2008/10/23 Kelly O'Hair <Kelly.Ohair at sun.com>:
> I'm very confused.
>
> Where did this rt-closed.jar file come from? All the jdk7 copies I have
> do not have any jdi class files in them (jdi is all open GPL sources).
> The rt-closed.jar files I have all contain only 75 class files
> (roughly half jmx/snmp and half media/sound).
>
> The openjdk6 rt-closed.jar file only has 25 jmx/snmp class files in it.
>
> Could this be a very very OLD rt-closed.jar file? Or perhaps someone
> copied some rt.jar to rt-closed.jar?
>
> Furthermore, tools.jar does not normally live in the jre (jre/lib/tools.jar)
> but above that at lib/tools.jar.
>
> There is something very strange going on here.
>
> -kto
>
> Christian Thalinger wrote:
>>
>> On Wed, 2008-10-22 at 12:16 +0100, Andrew John Hughes wrote:
>>>
>>> Ok, then it sounds like something is either not being built into the jars
>>> in bootstrap/jdk1.6.0 or they are being missing off the classpath used
>>> by HotSpot. IIRC, hotspot-tools.jar should include com.sun.tools.jdi.*.
>>
>> The class is not in tools.jar but in rt-closed.jar:
>>
>> $ unzip -l bootstrap/jdk1.7.0/jre/lib/tools.jar | grep jdi.Linked
>> $ unzip -l bootstrap/jdk1.7.0/jre/lib/rt-closed.jar | grep jdi.Linked
>> 9421 10-18-08 17:16 com/sun/tools/jdi/LinkedHashMap.class
>> 2259 10-18-08 17:16
>> com/sun/tools/jdi/LinkedHashMap$HashIterator.class
>> 1301 10-18-08 17:16 com/sun/tools/jdi/LinkedHashMap$1.class
>> 1769 10-18-08 17:16 com/sun/tools/jdi/LinkedHashMap$Entry.class
>> 1176 10-18-08 17:16 com/sun/tools/jdi/LinkedHashMap$2.class
>> 2415 10-18-08 17:16 com/sun/tools/jdi/LinkedHashMap$3.class
>> $
>>
>> The command line compiling the HotSpot classes is:
>>
>>
>> /export/home/twisti/projects/openjdk/icedtea6-bootstrap/build-hotspot-m64/bootstrap/jdk1.6.0/bin/javac
>> -source 1.4 -classpath
>> /export/home/twisti/projects/openjdk/icedtea6-bootstrap/build-hotspot-m64/bootstrap/jdk1.6.0/lib/tools.jar
>> -g -d ../generated/saclasses
>>
>> and bootstrap/jdk1.6.0/lib/tools.jar is linked to:
>>
>> $ ls -l bootstrap/jdk1.6.0/lib/
>> total 3
>> drwxr-xr-x 2 twisti staff 5 Oct 18 17:08 endorsed/
>> lrwxrwxrwx 1 twisti staff 110 Oct 18 18:49 tools.jar ->
>> /export/home/twisti/projects/openjdk/icedtea6-bootstrap/build-hotspot-m64/bootstrap/jdk1.7.0/jre/lib/tools.jar
>>
>> In my completed 32-bit IcedTea build, tools.jar contains the JDI
>> classes:
>>
>> $ unzip -l openjdk/control/build/solaris-i586/lib/tools.jar | grep
>> jdi.Linked
>> 1177 10-12-08 14:45 com/sun/tools/jdi/LinkedHashMap$2.class
>> 2389 10-12-08 14:45 com/sun/tools/jdi/LinkedHashMap$3.class
>> 1763 10-12-08 14:45 com/sun/tools/jdi/LinkedHashMap$Entry.class
>> 9571 10-12-08 14:45 com/sun/tools/jdi/LinkedHashMap.class
>> 2244 10-12-08 14:45
>> com/sun/tools/jdi/LinkedHashMap$HashIterator.class
>> 1304 10-12-08 14:45 com/sun/tools/jdi/LinkedHashMap$1.class
>>
>> So it seems IcedTea should add these classes to the tools.jar.
>>
>> - Christian
>>
>
This isn't Sun's rt-closed.jar, which is proprietary. This is a faked
version which
is part of the IcedTea build. However, on both IcedTea6 and IcedTea7 this only
includes SNMP and sound stubs (and the latter should probably be removed).
On IcedTea6, it also includes JNLP. We should look at enabling
IMPORT_BINARY_PLUGS=false on IcedTea so these stubs are not needed.
--
Andrew :-)
Support Free Java!
Contribute to GNU Classpath and the OpenJDK
http://www.gnu.org/software/classpath
http://openjdk.java.net
PGP Key: 94EFD9D8 (http://subkeys.pgp.net)
Fingerprint: F8EF F1EA 401E 2E60 15FA 7927 142C 2591 94EF D9D8
More information about the build-dev
mailing list