Module descriptors in artifacts

mark.reinhold at mark.reinhold at
Thu Sep 17 14:53:11 UTC 2015

2015/9/9 1:48 -0700, david.lloyd at
> ...
> 2) The integration of the descriptor into user module artifacts is also 
> concerning for a variety of additional reasons:
> ...
> These factors, I think, would unfortunately preclude public code 
> repositories which distribute modules in this format.  Such repositories 
> would have to instead ship a bootstrap module which could in turn 
> establish module dependencies in a different way, to ensure that the 
> description information can be handled separately from the code 
> artifacts themselves, fracturing the nascent ecosystem before it can 
> even establish itself.  It's not clear how such an ecosystem is expected 
> to function otherwise.

We're not trying to establish a new ecosystem of component distribution;
we are, rather, trying to fit into existing ones, and in particular the
existing Maven-based ecosystem.

Success in that space is, I suggest, being able to publish modular JARs
(and perhaps even JMODs) to Maven Central, along with their POMs, so that
they can be retrieved in the usual ways but placed on the module path
rather than the class path.  It's up to Maven/Gradle/Ivy/etc., rather
than the module system, to deal with version conflicts, dependency
management, hashes, signatures, and so forth.

Placing module descriptors into module artifacts preserves the simple and
familiar "just put your JAR files in the right directory" approach to
setting up a build- or run-time environment.  To put them somewhere else
would add unnecessary complexity.

- Mark

More information about the jpms-spec-experts mailing list