ATLAS-5002 : Support Java 17 for build and runtime #382
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
What changes were proposed in this pull request?
This PR introduces support for Java 17 across both build and runtime environments, while retaining compatibility with Java 8. The system can now be built and executed seamlessly using either JDK 8 or JDK 17.
How was this patch tested?
The patch was validated on both JDK 8 and JDK 17 through full Maven build cycles and runtime execution.
Maven Build Verification
JDK 8:
mvn clean install
JDK 17:
mvn clean install
Scenario 1: JDK 8 Build and Runtime
Scenario 2: JDK 8 Build and JDK 17 Runtime
Scenario 3: JDK 17 Build and Runtime
Note for JDK 17 Users:
Running integration tests (especially Jetty server-based tests) with JDK 17 requires additional JVM arguments due to stricter module access. These can be provided via MAVEN_OPTS:
Alternatively, you can place these arguments in a .mvn/jvm.config file to avoid exporting them manually for every run.
Additional Notes:
Repository module JUnit tests have been skipped, as they consistently result in JVM crashes or abrupt system exits despite all tests passing. This is being tracked and will be addressed in a separate fix.