Feedback needed/announcement: dropping support for JDK 7

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!)

1 Like

Hi Joram,

Thanks for your information, and may i know when “JDK 9 with 6.3.0 release” expected date?

Thanks,
Vzy

Hi Joram,

Are there any plans to restrict access to the (internal) Flowable implementation classes on Java 9?

thanks,
Rob

+1 to dropping java 7 support. More that three years have passed since the release of java 8. Imho the reason to support java 7 is android compatibility, but that does not apply to flowable.

@Vzy : See the roadmap page https://github.com/flowable/flowable-engine/wiki/Flowable-roadmap, currently planned for november

@robert.hafner : that sounds like a possibility indeed. I’m not sure if it’s all-or-nothing though, meaning that we shouldn’t enforce it if people don’t want it or do want to change internals. Not sure how that would be done in the new JDK9 world, would need some investigation.