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

Reply via email to