java 8 - java 17 升级指北

本文介绍了从Java 8升级到Java 17的必要性和注意事项,包括性能提升、依赖项升级、各版本具体改动及解决办法。文章强调了逐步升级的重要性,并提醒开发者注意废弃的API和依赖。Java 17作为下一个LTS版本,成为升级趋势,对于新项目尤为推荐。
摘要由CSDN通过智能技术生成

2014年发布的java SE 8和2017年发布的java EE 8,至今还是使用最广泛的java版本,大部分java开发者对于java 8之后的升级总是敬而远之,这跟java 9以后的破坏性升级和oracle的商用协议有关,但随着9月java 17的发布,我们有更多理由去升级和在新项目中使用更新的java了。

为什么要升级?

  1. java 9之后的Java改变了更新策略,java 11是8之后的第一个LTS版本,之后每隔半年更新一个小版本,三年更新一个LTS版本,所以java 17是下一个LTS版本。
  2. 最显著的改善是几乎免费获得的性能提升。java 8默认GC是Parallel GC,java 9 之后默认是G1 GC,且就算是同一个GC,新版本中的表现也会比旧版本性能好,我们的程序触发full GC的次数和GC造成的程序暂停会更短。关于这一点,有一篇文章分析了性能 How much faster is Java 17? 。除此之外,每一个新的Java版本,尤其是LTS版本,都包含改进,例如解决安全漏洞、改进性能和添加新功能。让java保持最新有助于项目的健壮性和安全性。开发人员通常也更想在日常工作中使用新技术。
  3. oracleJdk在11版本之后商用是需要付费的,17这个版本又改回了商用免费,openJdk和oracleJdk之间又可以自由选择了
  4. spring刚刚官宣2022年即将发布的spring framework 6.0和springboot 3.0版本最低要求java 17,且kafka 3.0版本之后也会弃用java 8,升级已经是一个趋势,未来更多框架和中间件会弃用java 8,作为开发人员也不能停止脚步

升级的注意事项

人们在java 8这个版本不愿意升级

  • 1
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值