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>