8233922: Service binding augments module graph with observable incubator modules

Kevin Rushforth kevin.rushforth at oracle.com
Tue Nov 19 13:13:00 UTC 2019


Alan,

Thanks for getting this fixed. I verified that the jpacakge ToolProvider 
implementation now works as expected.

-- Kevin


On 11/18/2019 12:13 PM, Mandy Chung wrote:
>
> On 11/18/19 4:34 AM, Alan Bateman wrote:
>>
>> This issue concerns the interaction of service binding with incubator 
>> modules, a left over from JDK 9 that resurfaces with the upcoming JEP 
>> 343 Packaging Tool (Incubator).
>>
>> The summary on this issue is that service binding augments the module 
>> graph with the modules induced by the service-use relation. This 
>> happens irrespective of the incubating status of the observable 
>> modules because the incubating designation is a JDK rather than Java 
>> SE/specified concept. It shows up with module 
>> `jdk.incubator.jpackage` because this module wants to implement the 
>> `java.util.spi.ToolProvider` service interface, a service interface 
>> used by `java.base`. If service binding were to resolve 
>> `jdk.incubator.jpackage` then a warning would be emitted in all 
>> phases that java.base is resolved (so everywhere).
>>
>> It's on my radar to more precisely specify service binding and also 
>> work out the specification changes needed to allow filtering of the 
>> observing modules but this is not needed at this time. Instead, we 
>> can limit the changes to the configuration for the boot layer as the 
>> set of observable modules when creating the configuration for the 
>> boot layer is not specified (it's up to the implementation). The 
>> change proposed here means that incubator modules are not candidates 
>> to add to the module graph during service binding for the boot 
>> layer's configuration. It has no impact on the general case where 
>> incubating modules may be observable when creating the configuration 
>> for custom layers.
>>
>
> Limiting this change to the boot layer's configuration is a good 
> solution that allows time to work out the specification change.
>
>> :
>>   http://cr.openjdk.java.net/~alanb/8233922/webrev/
>
> The patch looks good to me.
>
> Mandy
>



More information about the jigsaw-dev mailing list