Skip to content

Java 17 compatibility for matchbox-engine — is Java 21 a hard requirement? #510

@bgrommes

Description

@bgrommes

I'm looking to embed matchbox-engine as a library in a data pipeline running on AWS EMR (Spark 3.5), where the maximum supported Java runtime is Java 17. The current POM sets <maven.compiler.release>21</maven.compiler.release>, which means the compiled JAR won't load on Java 17.
Before forking and maintaining a Java 17 rebuild, I wanted to ask:

  1. Does the matchbox-engine codebase actually use any Java 21-specific language features or APIs, or was the version bump to 21 conservative/precautionary?
  2. Would a simple change of <maven.compiler.release> from 21 to 17 in the parent POM be expected to compile and run correctly, or are there known incompatibilities?
  3. Is there any plan or appetite to support Java 17 as a minimum target going forward, given that Java 17 is the LTS version most widely supported by managed cloud platforms (AWS EMR, Snowflake, etc.)?

Thanks.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions