Interoperation (Was: Re: Module-system requirements)
David M. Lloyd
david.lloyd at redhat.com
Wed Feb 11 19:56:22 UTC 2015
I'm concerned that the interoperation point doesn't quite go far enough.
It says "It must be possible for another module system, such as OSGi,
to locate Java modules and resolve them using its own resolver, except
possibly for core system modules."
I agree with this requirement, such as it is, but I would also assert
that it should be possible to retrofit not only OSGi but Java EE, Maven,
and even legacy "modules" like extensions and so on as modules. The
reason I make this assertion is that we have done all of these things
with success and (I dare say) relative ease, even to the extent of
achieving both EE and OSGi certification with such a retrofit.
The reason I think this is important is that it makes it possible to
link modules from different module specifications together in a variety
of sane and well-defined ways, and would provide a great deal more
flexibility to (for example) Java EE 9 which would presumably build on
the work of this EG.
To achieve this additional requirement does require a few very specific
implementation considerations but I do not believe that any of these
considerations contraindicate any of the other requirements stated here.
Thus I feel this requirement should be amended to something along the
Interoperation - It must be possible for another module system, such as
OSGi, to locate Java modules and resolve them using its own resolver,
except possibly for core system modules. It must be possible for other
module systems to reuse the framework provided by this specification in
order to facilitate a standard, well-defined mechanism by which
different present and future module systems may interoperate.
More information about the jpms-spec-observers