You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@geode.apache.org by Anthony Baker <ab...@pivotal.io> on 2018/05/31 16:03:16 UTC

Notes on Java10 with Geode

Hi all,

I spent some time looking into GEODE-3 [1].  Here are my notes:

- We want to be able to run GEODE clients and servers on Java 8, 9, 10, etc.
- Java 8 is going to become harder to obtain and we should ensure that we can compile under newer JDK’s (while still maintaining runtime support for Java8).
- We can use the -source 1.8 -target 1.8 flags to generate the appropriate class file version.
- We need to upgrade Gradle to 4.7 to run tests.
- We have to fix the the gradle docker plugin to support gradle 4.2+.
- We have to fix the buildSrc/src/test/java/… source since it uses inaccessible Java modules.
- We have to add JAXB and javax.activation as explicit dependencies since java.se <http://java.se/>.ee is no longer part of JavaSE (inaccessible module) [2].
- We have to upgrade Mockito and PowerMock to support newer Java versions.
- We have some invalid javadoc syntax to fix.

Then we have a bunch of test failures to investigate and fix :-)

Beyond the basic “run Geode with Java10” support there are some other areas to explore:

1) Changing the default GC engine from CMS (deprecated) to G1GC.
2) Adding modules [3].

My WIP hacks are at [4].


Anthony

[1] https://issues.apache.org/jira/browse/GEODE-3 <https://issues.apache.org/jira/browse/GEODE-3>
[2] https://docs.oracle.com/javase/10/migrate/toc.htm#JSMIG-GUID-F640FA9D-FB66-4D85-AD2B-D931174C09A3 <https://docs.oracle.com/javase/10/migrate/toc.htm#JSMIG-GUID-F640FA9D-FB66-4D85-AD2B-D931174C09A3>
[3] http://openjdk.java.net/projects/jigsaw/quick-start <http://openjdk.java.net/projects/jigsaw/quick-start>
[4] https://github.com/metatype/incubator-geode/tree/java10-hacks <https://github.com/metatype/incubator-geode/tree/java10-hacks>