Projects:Java 11 Support/Specs
Goal
The goal of this project is to support Openbravo to be built and deployed using Java 11.
Note that Java 7 and 8 will continue being supported after this project, so new features included in Java 11 will not be usable yet.
Regarding Java 10, it has been tested that no additional changes are required in order to compile and deploy Openbravo using it.
Build
With Java 9's jigsaw, JDK itself is modularized. Even Openbravo cannot be modularized because it is required to continue supporting older JDKs, it is necessary to add to build tasks those modules that are not standard anymore.
Note that with the Java 9 Support project the required modules (java.activation, java.xml.ws.annotation
) were being included in a shortened way by adding all java ee modules at once: --add-modules=java.se.ee
within the build (compilation) tasks.
While in Java 9 those modules were marked as deprecated for removal, in Java 11 they have been eventually removed. So in order to support Java 11 instead of adding the modules using the --add-modules
compiler argument, the API JAR files for those modules may be deployed on the classpath.
See here for additional information.
Deploy
Init scripts for Tomcat 7 and 8.0 include endorsed dirs which is not supported since Java 9. Tomcat 8.5 and 9 does not include it so they can be directly used.