Some more on Java9 modules from some reading - can anyone add/correct this?
Next steps to smooth the us eof Jebne with Java9 on the modules front:
S1/ to add a MANIFEST.MF entry "Automatic-Module-Name" to make any
future migration easier. It's a bit messy - as far as I can see, every
Jena module creating a jar file needs its own setup.
https://maven.apache.org/plugins/maven-jar-plugin/examples/manifest-customization.html
Practical help:
http://branchandbound.net/blog/java/2017/12/automatic-module-name/
[A] http://blog.joda.org/2017/04/java-se-9-jpms-module-naming.html
[B] http://blog.joda.org/2017/05/java-se-9-jpms-automatic-modules.html
[B] describes the migration problems without "Automatic-Module-Name". We
can mitigate that now.
S2/ Run java9 jdeps --jdk-internals on all jars
Our jars look clean (well, the ones I've checked in -Pdev); There again,
when I tried before it didn't catch use of "javax.xml.bin".
Google Guava is OK for Java9 but causes warnings. (PS its a "24.0-jdk"
currently). It uses sun.misc.Unsafe which is in Java9 ... but it is due
to go.
More checking needed.
After that, I don't see any incremental steps.
Then it's the big one. When the dependencies are all module'd and
stable. At that point, Jena would need to formally define the true API,
and many users/applications call into non-API packages. It looks some
way off.
Andy