[Java] Upgrade Java version used by toolchain to Java 21 or latest
- Ngôn ngữ chính
- Java
- Star
- 94
- Fork
- 152
- Merge trung bình
- 3 ngày 16 giờ
- Pull request đã merge (30 ngày)
- 11
Mô tả
### Describe the enhancement requested
As of today, Java 8 or higher is required to build Arrow. This is the version used to launch the Maven process and used by the plugins, including maven-compiler-plugin (and indirectly by `javac` or equivalent).
As the tools and plugins used by Arrow are dropping support for Java 8 bit by bit (and potentially Java 11 as well) and as the Java project also keeps introducing new features of potential interest to the community at a regular 6month cadence, updating the toolchain accordingly and regularly seems to become more and more important.
The proposal is to change Java version requirement to build Arrow to use the latest released version.
The proposal does not change the Java version requirement to use Arrow (which would be still Java 8 or possibly [Java 11 starting Arrow 18.0](https://github.com/apache/arrow/issues/38051)). This includes also unit testing.
To achieve this, work will be divided into multiple incremental steps:
- [ ] [[Java] Add support for JDK version cross-testing](https://github.com/apache/arrow/issues/43380)
- [ ] [Java] Enforce new Java version build requirement
### Component(s)
Continuous Integration, Developer Tools, Java
Hướng dẫn đóng góp
Hướng nghiên cứu
Bắt đầu với quy trình Maven và các thiết lập maven-compiler-plugin được mô tả trong issue, sau đó xem xét công việc kiểm thử chéo JDK được liên kết trước khi thay đổi yêu cầu build. Công việc được hoàn thành khi Arrow build được với phiên bản Java mới nhất đã phát hành, trong khi Java 8 vẫn là yêu cầu đối với runtime và kiểm thử đơn vị.
Do mô hình lập chỉ mục viết ra từ nội dung của issue.
Đánh giá
- Công nghệ
- java
- Lĩnh vực
- build-system, ci-cd, developer-experience
- Loại issue
- Tính năng
- Độ khó
- 4/5
- Thời gian dự kiến
- 3-5 ngày
- Mức độ hoạt động
- Đình trệ
- Độ rõ ràng
- Cần làm rõ
- Mức phù hợp với người mới
- 30/100