Implied readability + layers

Ali Ebrahimi ali.ebrahimi1781 at
Thu Nov 5 15:06:11 UTC 2015


On Thu, Nov 5, 2015 at 5:32 PM, Alan Bateman <Alan.Bateman at>

> On 05/11/2015 13:17, Ali Ebrahimi wrote:
>> If API usage of com.baz in does not contain any type of
>> you wouldn't have any issue, otherwise must live on layer1.
> Are there types in com.baz's API? If not then users of com.baz
> need to vigorously lobby the maintainer of com.baz to stop using requires
> public. If com.baz agrees then will not read at 1 and this
> frees up to use another version of in layer2.
> On the other hand, if there are types in com.baz's API then
> will be exposed to at 1 types.

If does not use any com.baz's depend API or depend
API added latter or requires public in com.baz added later or removed
latter any may be not aware that, estimating what version of for module that depend on at 2 would be quite puzzling
and this would be a good candidate for next edition of java puzzlers book.

But with one simple rule "Always current layer's version of module win over
parent layer's one. you don't have unexpected result as in this example at 2 may be ignored while not being aware.


Best Regards,
Ali Ebrahimi

More information about the jigsaw-dev mailing list