harmony-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Oliver Deakin <oliver.dea...@googlemail.com>
Subject Re: Questions about suncompat and bootclasspath.properties
Date Thu, 25 Jun 2009 10:45:36 GMT
Regis wrote:
> galaxy wrote:
>> Thanks Regis
>>
>> 2009/6/25 Regis <xu.regis@gmail.com>
>>
>>> galaxy wrote:
>>>
>>>> Hi ,
>>>> I have several questions about the classlib .
>>>>
>>>> 1)
>>>>    I noticed that the module suncompat isn't in the jre list of jar 
>>>> files
>>>> of harmony and also the lines of suncompat in 
>>>> bootclasspath.properties has
>>>> been commented
>>>> so I am wondering the function of this module ?Is it the same of
>>>> xxx-stubs.jar ?
>>>>
>>> suncompat provides some Sun internal classes that are widely used by
>>> applications. I guess these classes just delegate functions to Harmony
>>> classes which has equivalent functions.
>>
>>
>> One more thing I don't understand .It's the sun.misc.Unsafe class .It is
>> included in both the kernel.jar
>> and suncompat.jar .So is this the reason not including it in the boot 
>> class
>> path ?
>
> kernel.jar should be in the first place of bootstrap classpath, 
> sun.misc.Unsafe in suncompat.jar would never be used even if 
> uncommented in bootclasspath.properties.
>
> I don't know why it is not including in boot classpath (it's a long 
> time ago story). Maybe people think its existence just for compatible 
> reasons, Harmony can work well without it. If someone used Sun 
> specific APIs and didn't willing to change, he could just add 
> suncompat.jar to make his program work.

I think it was an intentional choice to not put it on the boot classpath 
by default because we don't want users to develop code relying on 
classes outside of the spec. So while we provide the suncompat.jar to 
get applications working which already rely on those classes, we 
encourage developers of new code to stick to spec'ed API by not making 
them available by default.

Regards,
Oliver


>
>>
>>> luni-kernel-stubs.jar is just stub classes to make compiler happy, the
>>> "real" classes are provided by vm.
>>>
>>>
>>>> 2)
>>>>   I noticed that there are several modules like yoko , asm ,and so on
>>>> ,unlike others ,they are in folders .And some of them the manifest 
>>>> file
>>>> doesn't have the export / import
>>>> statement including yoko  , yoko-core , yoko.rim , yoko-rmi-impl ,
>>>> becl.-5.2
>>>> .So how are they related to the other modules in the jre ?  I have
>>>> searched
>>>> several packages of them and found no relation  between them and 
>>>> the other
>>>> jre modules .
>>>>
>>> As I know, yoko is rmi provider, asm is used by pack200 module.
>>>
>>>
>>>> Could anyone explain this to me  :)
>>>> Thanks !
>>>>
>>>>
>>> -- 
>>> Best Regards,
>>> Regis.
>>>
>>
>>
>>
>
>

-- 
Oliver Deakin
Unless stated otherwise above:
IBM United Kingdom Limited - Registered in England and Wales with number 741598. 
Registered office: PO Box 41, North Harbour, Portsmouth, Hampshire PO6 3AU


Mime
View raw message