With JDK 9 now officially released, we’ve been looking into what this means when using Flowable. The good news is that for most usages there should be no problem, however wrt some 3th party integratons there are some incompatibilities. These incompatibilities are only happening when using the engines in combination with said modules that integrate with other systems (camel/mule/cxf). The development notes can be found here: https://github.com/flowable/flowable-engine/wiki/JDK-9
As you can see in the notes, to properly support JDK9 for all the modules, we’ll need to upgrade some of the 3th party libraries to a version that only supports JDK 8 at minimum.
Secondly, when building the distributable jars with JDK9, we need to configure the build to include some non-default classpath modules (such as java.xml.bind for certain Spring classes that import JAXB classes [even though Flowable doesn’t use JAXB] or the ee module for the cxf modules that references webservice classes). This can’t be done when the target is JDK 7 at minimum, but needs to be JDK 8.
So far, we’ve kept compatibility with JDK 7 as there was no compelling reason to remove it (however, given the needed upgrades of some dependencies it wasn’t going to last much longer anyway).
The plan is to drop support for JDK 7 and switch our build systems to JDK 9 in the 6.3.0 release (so not yet the next scheduled 6.2.x releases).
Any replies/remarks are welcome!
(also if you can help us nail down fixing the last couple of failing modules referenced in the wiki link above, don’t hesistate to create a PR!)