[TASK] Migrate dotCLI module from Java 11 to Java 25
Nobody has claimed this yet.
- Dominant language
- Java
- Stars
- 970
- Forks
- 486
- Avg merge
- 3d 33m
- Merged PRs (30d)
- 170
Description
Description
Migrate the dotCLI module from Java 11 to Java 25 to take advantage of the latest Java features, performance improvements, and long-term support. This migration will align the dotCLI with modern Java standards and enable the use of contemporary language features and runtime optimizations.
The dotCLI module currently targets Java 11, but upgrading to Java 25 will provide:
- Enhanced performance and garbage collection improvements
- Access to modern Java features (records, pattern matching, virtual threads, etc.)
- Better memory management and reduced startup time
- Alignment with current Java ecosystem trends
- Long-term support and security updates
This task involves updating build configurations, dependencies, and ensuring compatibility across all dotCLI functionality.
Acceptance Criteria
- Update Maven/Gradle build configuration to target Java 25
- Verify all dependencies are compatible with Java 25
- Update CI/CD pipeline to use Java 25 for dotCLI builds
- Ensure all existing dotCLI functionality works correctly on Java 25
- Update documentation to reflect Java 25 requirement
- Test dotCLI installation and execution on Java 25 runtime
- Verify cross-platform compatibility (macOS, Linux) with Java 25
- Update Docker images and deployment configurations if applicable
- Run comprehensive test suite to ensure no regressions
- Update minimum system requirements documentation
Priority
Medium
Additional Context
Current State:
- dotCLI module currently uses Java 11
- Located in
tools/dotcms-cli/directory - Has its own build configuration separate from core dotCMS
Slack Thread
https://dotcms.slack.com/archives/C076ZF14U04/p1763652954029149
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start in tools/dotcms-cli and inspect its separate Maven/Gradle build configuration, then trace CI/CD, dependency, Docker, and documentation references for the module. Verify the dotCLI build, installation, execution, and comprehensive tests on Java 25 across macOS and Linux. Done means all listed acceptance criteria are satisfied without regressions.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- java
- Domain
- build-system, ci-cd, cli, documentation
- Issue type
- Refactor
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Quiet
- Clarity
- Mostly clear
- Newbie friendliness
- 42/100