Skip to content

Comments

Raise Java baseline to 17 and clean XML parsers for JDK 22+#97

Open
dyrpsf wants to merge 1 commit intodraeger-lab:masterfrom
dyrpsf:java17-baseline
Open

Raise Java baseline to 17 and clean XML parsers for JDK 22+#97
dyrpsf wants to merge 1 commit intodraeger-lab:masterfrom
dyrpsf:java17-baseline

Conversation

@dyrpsf
Copy link

@dyrpsf dyrpsf commented Jan 5, 2026

This PR raises the Java baseline to 17 and removes legacy XML parser dependencies so SBSCL
runs cleanly on modern JDKs (tested locally on JDK 24).

Changes:

  • Set jdk.version to 17 and updated maven-compiler-plugin to 3.11.0 with <release>17</release>.
  • Excluded xercesImpl, xml-apis, and xalan from the jlibsedml dependency so that the
    built-in JDK JAXP stack is used. This avoids the AbstractMethodError seen on JDK 22+ when
    legacy XML parsers shadow the JDK implementation.
  • Verified mvn test succeeds on a Java 17+ JDK (24 in my case); FBA code under
    org.simulator.fba compiles and is usable with the new baseline.
  • Updated README, INSTALL, and UserGuidelines to state that Java 17+ is required.
  • Updated .travis.yml to run the CI matrix on OpenJDK 17 and a newer OpenJDK version
    instead of Java 11.
    issue Raise Java baseline & ensure FBA runs cleanly on Java 22 (deprecate Java 8) #91

Copy link
Collaborator

@xts-Michi xts-Michi left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

As mentioned in another PR, I am currently testing and debugging the full implementation of OptSolvX as a new backend for SBSCL (see #90 for current status).

Consequently, this PR should remain on hold until the OptSolvX implementation is complete. This ensures the new Java baseline and XML parser can be tested in the anticipated environment. Raising those versions now would interfere with current progress and create unnecessary overhead.

@dyrpsf
Copy link
Author

dyrpsf commented Jan 8, 2026

As mentioned in another PR, I am currently testing and debugging the full implementation of OptSolvX as a new backend for SBSCL (see #90 for current status).

Consequently, this PR should remain on hold until the OptSolvX implementation is complete. This ensures the new Java baseline and XML parser can be tested in the anticipated environment. Raising those versions now would interfere with current progress and create unnecessary overhead.

Thanks a lot for the explanation and the pointer to PR #90!

That makes sense—raising the Java baseline and adjusting the XML parser stack while the
OptSolvX backend is still being developed could easily interfere with your current work.

I’m happy to keep this PR on hold until the OptSolvX implementation is complete and the
new Java 17+ / JAXP setup can be tested in the final environment. Once PR #90 is merged or
the integration is otherwise ready, please let me know and I’ll gladly rebase this branch
on the updated master and make any adjustments needed so that the Java 17 / XML changes
fit cleanly into the new setup.

@xts-Michi xts-Michi added the on hold Paused until a prerequisite is completed label Jan 8, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

on hold Paused until a prerequisite is completed

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants