My 2 cents...

From previous experience in multi-version setups; One often forgets that setting Java version in the build tool is not enough. You also need to ensure that the openjdk-8 rt.jar is used for the compile or you might inadvertently end up using JDK classes/methods not present later.

Cheers
Niclas

On 2025-10-20 10:21, Christofer Dutz wrote:
Hi all,

Given we haven’t changed anything since we went from 8 to 21 … I’d like to make the API module Java 8 compatible. This way you could theoretically use drivers using the PLC4X API down to Java 8, if you find someone willing to provide drivers that go so low.

So assuming you want to use drivers with a lower version PLC4J API won’t be the limiting factor. You’d have to see how low the program you want to integrate it into or the drivers you’re provided with will be able to go.

I’ll wait another day or so, if I don’t hear anyone objecting, I’ll do the change.

Chris


Von: Lukas <[email protected]>
Datum: Samstag, 18. Oktober 2025 um 20:10
An: [email protected] <[email protected]>
Betreff: Re: [DISCUSS] Downgrade the Java version for only the plc4j-api module?

+1 for setting plc4j-api to Java 17. As this is probably not the only compatibility topic with existing solutions out there and we are aiming for being able to connect to as many protocols or solutions as possible. To be as open and connecting as we can without increasing our effort of development.

Lukas

Am 18. Oktober 2025 19:24:31 MESZ schrieb Christofer Dutz <[email protected]>:
Hi,

As you all know, I’m working on new drivers. I also want to implement some commercial plugins. Now I’ve run into the case, where one of the runtimes I’m targeting is restricted to Java 17.

The only module I am currently using from PLC4X in order to maintain API compatibility, ist the plc4j-api module.

I think that simply setting the compile level of that one artifact would allow using other driver implementation with older Java version (We did say, that we will jump to Java 21 and if someone needs older drivers, he can find commercial support to help him with that … now by updating the API module to 21 as well we sort of make that impossible.

What do you think? Do we want to downgrade the java compiler version of the PLC4J-api module? We could probably even go back down to Jaca 8 with that.

This would allow using „special drivers“ while staying API compatible.

Chris

Reply via email to