8182482: Module System spec updates
Hamlin Li
huaming.li at oracle.com
Wed Jun 21 08:27:30 UTC 2017
Hi Alan,
Thank you for explanation, it's much clear for me.
Besides of it, I have some minor comments about the doc:
In section "Timing of provider discovery", it says as below:
Each invocation of the|iterator|method returns an|Iterator|that first
yields all of the elements cached from previous iteration, in
**instantiation order**, and then lazily locates and instantiates any
remaining providers, adding each one to the cache in turn.
But in API doc for iterator(), it says:
Caching: The iterator returned by this method first yields all of the
elements of the provider cache, in **the order that they were loaded**.
In API doc for findFirst(), it says:
Load the first available service provider of this loader's service.
By comparing to API doc of iterator() and stream(), should above line be
"Load *and *instantiate** the first available service provider of this
loader's service."
Thank you
-Hamlin
On 2017/6/21 15:51, Alan Bateman wrote:
> On 21/06/2017 07:10, Hamlin Li wrote:
>> :
>>
>> It's possible to have 2 public static no-args method "provider" in a
>> service provider *class file*, JVM spec allows it,
> Right, you can't do this in the Java Language but the JVMS allows it.
> The most obvious usage of this "feature" is covariant return types
> where the java compiler will generate a bridge method with the less
> specific return type from the superclass. In the Core Reflection APIs
> then getMethods and getMethod need to deal with this so that the user
> of API only sees the overriding method.
>
>
>>
>> And I still have questions:
>> Why need to have this restriction in java API doc?
> For completeness only as it's one of the reasons why SCE is thrown.
> Note that it's also not "new" in this update, instead the wording for
> many of the error cases has been refreshed.
>
>
>
>> Will there be corresponding update in JVM spec? When will this
>> restriction be verified, at linking time?
> No impact.
>
> -Alan
More information about the jigsaw-dev
mailing list