[ 
https://issues.apache.org/jira/browse/KUDU-3681?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=18064157#comment-18064157
 ] 

ASF subversion and git services commented on KUDU-3681:
-------------------------------------------------------

Commit 9b8aef91451cbbf646a59232eec8f3acbb7016a4 in kudu's branch 
refs/heads/master from zchovan
[ https://gitbox.apache.org/repos/asf?p=kudu.git;h=9b8aef914 ]

[build][java] KUDU-3681: Move to JDK17

This change aims to support building and running the java bits with Java 17.

The changes:
* natively set release version when building with Java 9+
* use 'org.apache.tomcat:annotations-api' as a compileOnly dependency for the
  'javax.annotations' package, since that was deprecated in Java 9
* upgrade jacoco dependency from 0.8.6 to 0.8.8 for Java17 compatibility
* upgrade the Hive dependency to 4.1.0
* after this change, it is no longer possible to compile Kudu java bits
  with JDK versions lower than 17

Change-Id: I1f73c0d3a79e1c37b12a173881273b4b68d718b3
Reviewed-on: http://gerrit.cloudera.org:8080/23259
Reviewed-by: Marton Greber <[email protected]>
Tested-by: Marton Greber <[email protected]>
Reviewed-by: Gabriella Lotz <[email protected]>


> Move to JDK17
> -------------
>
>                 Key: KUDU-3681
>                 URL: https://issues.apache.org/jira/browse/KUDU-3681
>             Project: Kudu
>          Issue Type: Improvement
>            Reporter: Chovan Zoltan
>            Assignee: Chovan Zoltan
>            Priority: Major
>
> {*}Summary{*}: Deprecate Java 8 support and establish Java 17 as the minimum 
> required version for Apache Kudu Java components
> h3. Background
> Apache Kudu currently supports Java 8+ for both runtime and build 
> environments, as documented in our installation and developer guides. 
> However, Java 8 reached End of Public Updates in January 2019 and Extended 
> Support will end in December 2030. Meanwhile, Java 17 is the current Long 
> Term Support (LTS) release and offers significant improvements in 
> performance, security, and developer experience.
> h3. Current State
>  * Documentation: Java 8+ requirement listed in java/README.adoc and 
> docs/installation.adoc
>  * Build System: Gradle 7.6.4 with full Java 17 support
> h3. Proposal
> Officially deprecate Java 8 support and establish Java 17 as the minimum 
> required version for:
>  * Runtime environments
>  * Build environments
>  * Development environments
>  * CI/CD pipelines
> h3. Benefits of Java 17
> 1. Performance Improvements:
>  * Enhanced garbage collection (ZGC, G1GC improvements)
>  * Better JIT compilation optimizations
>  * Reduced memory footprint
> 2. Security Enhancements:
>  * Regular security updates and patches
>  * Improved cryptographic APIs
>  * Enhanced sandboxing capabilities
> 3. Developer Experience:
>  * Modern language features (sealed classes, pattern matching, text blocks)
>  * Better tooling support
>  * Improved diagnostics and debugging
> 4. Ecosystem Alignment:
>  * Major frameworks (Spring, Spark, Hadoop) have moved to Java 17
>  * Better compatibility with modern libraries
>  * Future-proofing for Java ecosystem evolution
>  * Hive recently moved to Java 17 then 21 in their latest [4.1.0 
> release|https://github.com/apache/hive/releases/tag/rel%2Frelease-4.1.0]
>  
>  



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

Reply via email to