excluding transitive module
Jochen Theodorou
blackdrag at gmx.org
Wed Apr 15 07:00:20 UTC 2020
On 14.04.20 19:38, Alex Buckley wrote:
[...]
> It's fine for
> Library1 to require SharedApi, and for Library2 to require
> SharedApiImpl, but if the exported packages overlap, then it's not fine
> for Project to require, indirectly, both SharedApi (via Library1) and
> SharedApiImpl (via Library2). That is, SharedApi and SharedApiImpl are
> not composable.
And what do you do when you are in that situation?
> If you had put them both on the classpath in JDK 8, then
> you would have had a broken system. If you want to compose an
> application that includes both, then one of them has to change.
> There is no need to speak of "transitive" modules because `requires
> transitive` has not entered the picture.
Without the module system I can just exclude one and be fine. With
module system I get into a split package problem adn have not found a
real solution yet
bye Jochen
More information about the jigsaw-dev
mailing list