HEADS-UP: building JavaFX 9-dev with jdk-9+148 and later
Kevin Rushforth
kevin.rushforth at oracle.com
Mon Dec 5 19:41:29 UTC 2016
To: OpenJFX developers who build FX 9-dev
The latest batch of jigsaw changes [1] were pushed into jdk9/dev as
JDK-8169069 [2] last Thursday, and will be integrated into jdk-9+148
later this week. In order to build FX with this version of the JDK we
need to make a change to our module-info.java files to conform to the
new syntax for "requires transitive" and for listing multiple service
providers. This work is tracked by JDK-8170485 [3]. These changes are
not backward compatible, so they will prevent FX 9-dev from compiling on
earlier jdk-9 builds. As such we will need to bump the minimum version
to 148 at the same time we make these changes.
An additional complication is that the latest jigsaw changes also
tighten the encapsulation rules such that setAccessible no longer breaks
encapsulation without explicit permission [4]. This change affects
gradle/groovy such that additional java command-line options are needed
in order for gradle to run. The requirement is to set the
"_JAVA_OPTIONS" environment variable to include the list of
"--add-opens" arguments as specified in JDK-8170485. I will also add a
"README-java-options" file with the needed list.
I will send out the formal review for JDK-8170485 later today or
tomorrow, but if you are interested in seeing the preliminary webrev,
the URL is listed in a comment in the JBS issue.
If there are no problems, I plan to push the fix for JDK-8170485 into FX
9-dev on Tuesday, Dec 13. At that time you will need to upgrade your
boot JDK to jdk-9+148 and set the appropriate _JAVA_OPTIONS as indicated
in "README-java-options".
-- Kevin
[1]
http://mail.openjdk.java.net/pipermail/jigsaw-dev/2016-November/010249.html
[2] https://bugs.openjdk.java.net/browse/JDK-8169069
[3] https://bugs.openjdk.java.net/browse/JDK-8170485
[4] See #AwkwardStrongEncapsulation in [1]
More information about the openjfx-dev
mailing list