官方文档链接:https:www。jenkins。ioblog20220628requirejava11。 介绍 Jenkins项目致力于为最终用户和开发人员提供世界级的平台体验。这种体验的核心是Java,它是一种面向对象的编程语言,具有Java虚拟机(JVM)形式的跨平台运行时。自成立以来,Jenkins项目一直是Java的主要消费者,向超过300,000个控制器的安装基础分发了1,800多个插件,并且Jenkins经常出现在有史以来顶级Java应用程序的列表中。 从Jenkins2。357(2022年6月28日发布)和即将发布的9月LTS版本开始,Jenkins需要Java11。此外,从Jenkins2。355(2022年6月14日发布)和Jenkins2。346。1LTS(6月22日发布,2022),Jenkins支持Java17。插件已经在JENKINS68446中准备好了。使用插件管理器在升级到Jenkins2。357之前和之后升级所有插件。 长期使用Jenkins的用户和Java开发人员可能会回忆起之前迁移到Java7和Java8的过程。虽然这些迁移并非微不足道,但与迁移到Java9及更高版本的规模相比,它们显得苍白无力。Java9代表了Java生态系统在许多方面发生的巨大变化。不仅许可政策、版本控制方案、发布节奏和长期支持(LTS)周期发生了变化,而且语言和运行时也发生了许多重大的技术变化(例如,ProjectJigsaw),并非所有这些都保留了以前版本所具有的高度兼容性。尽管从长远来看,这些演进性变化可能符合Java社区的最大利益,但社区仍有责任了解其影响并做出相应的计划。数据 Java版本的趋势 上述数据表明,每个主要Java版本的生命周期显然是一个高斯函数。Java的每个主要版本都由供应商发布,开始一个快速增长的采用阶段,达到使用高峰,失去Jenkins项目的支持,开始使用量下降,使用量下降到终端状态,最后到达供应商端生命周期(EOL),大致按此顺序。 Java6Java7Java8Java11发布日期2006年12月11日2011年7月7日2014年3月18日2018年9月25日快速使用量2009年10月(11,193次安装)2013年2月(10,997次安装)2015年2月(12,210次安装)2019年11月(10,094次安装)峰值使用量2013年3月(47,244次安装)2015年6月(68,681次安装)2021年2月(261,468次安装)不适用Jenkins要求下一个主版本2015年5月(21,798次安装)2017年4月(40,569次安装)2022年6月(185,286次安装)不适用终端使用量下降2016年5月(10,283次安装)2019年3月(10,123次安装)不适用不适用生命周期结束(EOL)2015年12月31日2019年7月31日至少2026年11月至少2024年10月 进一步推断,可以观察到以下趋势:Jenkins用户至少需要一年时间才能开始采用Java的新版本。一旦Jenkins用户开始采用新版本的Java,之前Java版本的使用量最终会达到峰值并开始下降。Jenkins项目历来开始需要新的Java版本,大约在前一个Java版本衰退期的一半。一旦Jenkins需要一个给定的Java版本,之前的Java版本的使用量就会继续下降,直到达到下降的最终阶段。上述下降的最终阶段通常与Java供应商的积极支持结束有关。结论 至关重要的是,在前一个版本的使用量明显下降之前,Jenkins项目从未需要给定版本的Java。这通过确保大多数用户在生产中成功运行新版本来降低风险。相反,对Jenkins用户的新Java版本的要求会激励其余用户进行升级,并防止不愿升级的用户继续依赖即将达到供应商生命周期终止(EOL)的版本,从而使项目面临风险)。 Java11的要求与历史先例一致。Java8的使用在2021年2月达到顶峰,此后一直在下降。同时,自2019年11月以来,Java11的采用率一直在迅速增加,但尚未达到顶峰。现在是需要Java11的时候了。 BUG挖掘机性能征服者头顶锅盖