On 3/25/2017 8:47, Alan Bateman wrote:
On 24/03/2017 17:41, Ceki Gülcü wrote:
Hi All,
The initial phase of SLF4J project modularization in preparation for
Java 9/Jigsaw went well. I ran into many wrinkles most of which were
due to my own ignorance about Java 9 modules.
You can see the results at
https://github.com/qos-ch/slf4j/tree/1_8_0-SNAPSHOT
Now that the initial phase of modularization is done, I looked at
creating mutlti-release jars for the SLF4J project. However, after
having spent 2 full days on trying to get Maven to do multi-release
jars, I am giving up without having made any measurable progress.
Just curious, why you do need a MR-JAR? Aside from the
module-info.class, do you have other source/classes that use APIs that
are new for Java SE 9 or code that uses sun.* APIs that have been
encapsulated or removed in JDK 9? If it's just the module-info.class
then you should only need to create a modular JAR. The module-info.class
will be ignored when on JDK 8 or older.
Right, project code does not have anything Java9 specific except
module-info.class.
So if I understand correctly, source code except module-info.java would
need to be compiled targeting an older java version, say 1.6, and
module-info.java would be compiled targeting Java 9, everything placed
at their usual non-MR-JAR destinations.
I'll give it a shot next week.
--
Ceki