[Task]: Migrate to build with Java11
What needs to happen?
Currently Beam CI still uses Java8. There were build plugins and dependencies start dropping java8 support (e.g. the docker plugin beam used to use and we had to vendor the plugin into BeamDockerPlugin), or discussion is under way
- Apache Flink 1.15 deprecated Java8 support: https://nightlies.apache.org/flink/flink-docs-master/docs/deployment/java_compatibility/#java-8-deprecated; discussion on dropping Java8 support for Flink 2.0: https://lists.apache.org/thread/b8w5cx0qqbwzzklyn5xxf54vw9ymys1c
- Apache Kafka 3 deprecated Java8 support and plan to drop in Kafka 4.0: https://issues.apache.org/jira/browse/KAFKA-12894
- Apache Spark 4.0 will drop Java8 support, and Apache Arrow may follow: https://lists.apache.org/thread/ptbg70k3tfq4ljz4rbz0y5hqlvof8y31
Proactively, it is the time to migrate build system to Java11, while keep Java8 support. This paves way for future deprecation of Java8 and drop Java8 support for Beam if need to happen.
Issue Priority
Priority: 2 (default / most normal work should be filed as P2)
Issue Components
- [ ] Component: Python SDK
- [ ] Component: Java SDK
- [ ] Component: Go SDK
- [ ] Component: Typescript SDK
- [ ] Component: IO connector
- [ ] Component: Beam YAML
- [ ] Component: Beam examples
- [ ] Component: Beam playground
- [ ] Component: Beam katas
- [ ] Component: Website
- [ ] Component: Spark Runner
- [ ] Component: Flink Runner
- [ ] Component: Samza Runner
- [ ] Component: Twister2 Runner
- [ ] Component: Hazelcast Jet Runner
- [ ] Component: Google Cloud Dataflow Runner
Sent a discussion on beam dev: https://lists.apache.org/thread/w5lf2tg1nlk77so2p39cqphr1gqbh72s
Realize build candidate script still explicitly "install java8" so keep this open until next release (2.60.0) where that part should also be updated