Project

General

Profile

Java9 Support » History » Version 11

Henning Blohm, 01.01.2018 15:17

1 10 Henning Blohm
h2. Java 9 Support (#1991)
2 2 Henning Blohm
3 5 Henning Blohm
h2. Supporting the Java 9 Language
4
5
We integrate ECJ version 4.7.2 from the download link below. Java 9 is fully supported since 4.7.1a ("New and Noteworthy 4.7.1a":https://www.eclipse.org/eclipse/news/4.7.1a/)
6
7
* "JDT Core 4.7.2":http://download.eclipse.org/eclipse/downloads/drops4/R-4.7.2-201711300510/#JDTCORE
8
* "New and Noteworthy 4.7.1a":https://www.eclipse.org/eclipse/news/4.7.1a/
9
* "JDT Core Git":https://git.eclipse.org/c/gerrit/jdt/eclipse.jdt.core.git/
10
* "JDT Core main":https://www.eclipse.org/jdt/core/dev.php
11
* "Oxygen help":http://help.eclipse.org/oxygen/index.jsp
12
13
We support a new LangLevel.JAVA9 and derive all compiler settings accordingly.
14 1 Henning Blohm
15 11 Henning Blohm
Unfortunately using Java 9 actually requires an updated Jetty version ([[Jetty9_4_support]]).
16
17 1 Henning Blohm
h2. Supporting the Module System
18 6 Henning Blohm
19
The Java 9 module system provides for module level package exports and cross-module dependencies. As such it does not contradict the class loading delegation model but rather adds a dimension to it: Layers
20
21 9 Henning Blohm
Supporting the Java 9 module system (project jigsaw) from Z2 means:
22 3 Henning Blohm
23 7 Henning Blohm
* A Java Component consists now of up to three layers, one for API, one for impl, one for test.
24 1 Henning Blohm
* All other module declaration business is out of scope for the Z2 runtime but rather purely development oriented business.
25 9 Henning Blohm
26
References
27
28
* "State of the module system (easy and comprehensive read)":http://openjdk.java.net/projects/jigsaw/spec/sotms/
29
* "Project Jigsaw":http://openjdk.java.net/projects/jigsaw/
30
* "Jigsaw delivered":https://mreinhold.org/blog/jigsaw-complete