Technical status
Partially supported — Maven/Ant build & tests and in-process drivers work; pure fat-jar JS needs Rhino on the application classpath (follow-up packaging/docs issues listed in the plan).
Goal
Use a separate exp-jdk17 branch to determine the smallest practical set of changes required to compile, test, package, and run Scriptella on JDK 17.
This is an experiment, not yet a commitment to merge JDK 17 support into Scriptella 1.3 RC2.
Approach
Prefer the cheapest targeted compatibility fixes. Avoid broad dependency or build modernization unless it is required to obtain a meaningful JDK 17 result.
Push the experimental branch even if some issues remain unresolved, and use this ticket to record findings and the final merge/defer decision.
Areas to investigate
- Maven reactor build and tests on JDK 17
- JavaScript driver behavior without the JDK-bundled Nashorn engine
- Existing Rhino JSR-223 integration and
ScriptellaDriverITest
- Janino 3 compilation and generated class loading
- Mail driver behavior using the explicit
javax.mail dependency
- Javadoc and release artifact generation
- Ant distribution packaging, after the Maven path works
- Java 8 bytecode and runtime compatibility, if the experiment becomes a merge candidate
The shell driver added in #32 is already available and is not part of this investigation.
Initial validation
JAVA_HOME=/path/to/jdk17 mvn clean verify
JAVA_HOME=/path/to/jdk17 mvn clean deploy -Dcentral.skipPublishing=true
Run representative JDBC, JavaScript, Janino, mail, and command-line launcher scenarios.
Deliverables
-
Published exp-jdk17 branch
-
Exact successful and failing commands
-
Minimal compatibility fixes made during the experiment
-
Remaining blockers and likely effort
-
Assessment of whether Java 8 compatibility can be preserved
-
Recommendation to either:
- merge the bounded changes for 1.3 RC2; or
- retain the branch as groundwork for Scriptella 1.4
Decision rule
Consider merging into RC2 only if JDK 17 compatibility requires roughly one or two focused implementation chunks and does not require a broad dependency or architecture migration.
Technical status
Partially supported — Maven/Ant build & tests and in-process drivers work; pure fat-jar JS needs Rhino on the application classpath (follow-up packaging/docs issues listed in the plan).
Goal
Use a separate
exp-jdk17branch to determine the smallest practical set of changes required to compile, test, package, and run Scriptella on JDK 17.This is an experiment, not yet a commitment to merge JDK 17 support into Scriptella 1.3 RC2.
Approach
Prefer the cheapest targeted compatibility fixes. Avoid broad dependency or build modernization unless it is required to obtain a meaningful JDK 17 result.
Push the experimental branch even if some issues remain unresolved, and use this ticket to record findings and the final merge/defer decision.
Areas to investigate
ScriptellaDriverITestjavax.maildependencyThe shell driver added in #32 is already available and is not part of this investigation.
Initial validation
Run representative JDBC, JavaScript, Janino, mail, and command-line launcher scenarios.
Deliverables
Published
exp-jdk17branchExact successful and failing commands
Minimal compatibility fixes made during the experiment
Remaining blockers and likely effort
Assessment of whether Java 8 compatibility can be preserved
Recommendation to either:
Decision rule
Consider merging into RC2 only if JDK 17 compatibility requires roughly one or two focused implementation chunks and does not require a broad dependency or architecture migration.