Standardize Java versions and adopt Debezium BOM for dependency management in debezium-examples
- Dominant language
- HTML
- Stars
- 6
- Forks
- 8
- Avg merge
- 2d 19h
- Merged PRs (30d)
- 1
Description
#### Current Behaviour
Currently, each example in the repository uses different Java versions and manages Debezium dependencies individually. This creates several issues:
1. **Inconsistent Java versions** - Examples use different `maven.compiler.source`/`target` versions (e.g., some use Java 11, others may use different
versions)
2. **Manual dependency management** - Each example specifies Debezium dependency versions independently, making upgrades error-prone
3. **Version conflicts** - During version updates (like the recent 3.5 upgrade), incompatibility issues arise due to inconsistent dependency
versions
4. **Maintenance burden** - Every Debezium version upgrade requires updating multiple POMs across all examples
#### Expected Behaviour
1. **Standardize Java version**: Choose a single Java version (e.g., Java 17 or 21) for all examples
- Update all `pom.xml` files to use consistent `maven.compiler.source` and `maven.compiler.target` properties
- Document the minimum Java version requirement in the main README
2. **Adopt Debezium BOM**: Use Debezium's Bill of Materials (BOM) for dependency management
- Import `io.debezium:debezium-bom` in the `` section
- Remove explicit version declarations from Debezium dependencies in individual examples
- This ensures all Debezium components use compatible versions automatically
#### Related
- debezium/dbz#1165 PR discussion
Contributor guide
Assessment
This issue has not been assessed yet.