To package Geode as Java 11 Jigsaw module(s), a major hurdle is the requirement 
that packages cannot be split across modules.

If we simply map existing Geode jars to Modules, we have about 10 split 
packages (see table below).  Any restructuring would potentially have to wait 
until Geode 2.0.

A workaround would be to map existing packages into a small number of new 
modules (e.g. geode-api and geode-internal).  Existing jars would remain as-is. 
 Users making the transition to Java 11 /w Jigsaw already need to switch from 
CLASSPATH to MODULEPATH  so the inconvenience of a different naming scheme for 
Geode-as-modules might be acceptable (however, once module naming and 
organization is established, we may be stuck with it for a long time). 

Thoughts?

Is it even possible to rearrange all classes in each package below into a 
single jar?  Is doing so desirable enough to defer Java 11 support until a 
yet-unplanned Geode 2.0, or perhaps to drive such a release?

Or, is it satisfactory to fatten Geode releases to include one set of jars for 
CLASSPATH use, plus a different set of jars for MODULEPATH use?


Package
Jar
org.apache.geode.cache.client.internal
geode-core-1.8.0.jar
geode-cq-1.8.0.jar
geode-wan-1.8.0.jar
org.apache.geode.cache.client.internal.locator.wan
geode-core-1.8.0.jar
geode-wan-1.8.0.jar
org.apache.geode.cache.query.internal.cq
geode-core-1.8.0.jar
geode-cq-1.8.0.jar
org.apache.geode.cache.util
geode-core-1.8.0.jar
geode-rebalancer-1.8.0.jar
org.apache.geode.internal
geode-connectors-1.8.0.jar
geode-core-1.8.0.jar
geode-cq-1.8.0.jar
geode-lucene-1.8.0.jar
geode-wan-1.8.0.jar
org.apache.geode.internal.cache.tier.sockets.command
geode-core-1.8.0.jar
geode-cq-1.8.0.jar
org.apache.geode.internal.cache.wan
geode-core-1.8.0.jar
geode-wan-1.8.0.jar
org.apache.geode.internal.cache.wan.parallel
geode-core-1.8.0.jar
geode-wan-1.8.0.jar
org.apache.geode.internal.cache.wan.serial
geode-core-1.8.0.jar
geode-wan-1.8.0.jar
org.apache.geode.internal.protocol.protobuf.v1
geode-protobuf-1.8.0.jar
geode-protobuf-messages-1.8.0.jar

Reply via email to