首页 > 编程语言 >无语!Jenkins 也宣布弃用 Java 8

无语!Jenkins 也宣布弃用 Java 8

时间:2023-01-05 16:33:48浏览次数:64  
标签:11 弃用 Java 17 版本 Jenkins 迁移


Java 之父 James Gosling 先前称,开发者应尽快弃用 JDK 8,可以选择 JDK 17 LTS,因为后者在各个方面都带来了巨大的改进。

无语!Jenkins 也宣布弃用 Java 8_开发者

开源 Devops 工具 Jenkins 宣布:从 6 月 28 日发布的 Jenkins 2.357 和即将发布的 9 月 LTS 版本开始,Jenkins 最低需要 Java 11。

无语!Jenkins 也宣布弃用 Java 8_Jenkins_02

Jenkins 最初称为 Hudson ,是一款老牌持续集成工具,至今已创立十多年。自 2005 年成立以来,Jenkins 项目经历了多次 Java 迁移。目前从 Java 8 到 Java 11 的迁  移与 Jenkins 项目中的迁移历史是一致的。

无语!Jenkins 也宣布弃用 Java 8_Jenkins_03

开发者 Basil Crow 在博客中解释称:Jenkins 项目在短期内可能会保留在 Java 8 上,但出于几个原因,这样做是弊大于利。首先,Jenkins 项目使用的许多关键第三方库(例如,Jetty、JGit、Spring Framework 和 Spring Security)开始需要更新版本的 Java,而停留在 Java 8 上会使 Jenkins 项目无法从上游项目接收安全更新。

此外,新版本 Java 对 Java 平台进行了显着的运行时改进。例如,LinkedIn 在迁移到 Java 11 时看到了显着的性能改进,而 Adoptium 在迁移到 Java 11 时看到了显着的内存使用改进(在 Jenkins 上同样如此),而最近的 Java 运行时则提供了许多对垃圾收集的改进。

最后,保持 Java 的当前版本有助于 Jenkins  吸引和留住开发人员。

目前,官方的 Jenkins Docker 镜像 已经基于 Java 11 好几个月了,Java 8 暂时还可作为备选,Java 17 可在预览模式下使用。但是从 Jenkins 2.357 开始,Java 8 映像就将被淘汰,Java 17 映像从预览版过渡到一般可用性 (GA)。

事实上 Jenkins 团队更推荐用户使用 Java 17 :

Jenkins 对 Java 17 的支持是全新的,不过它还没有达到在 Jenkins 社区内普遍采用的阶段。尽管如此, 我们的经验是 Java 17 是比 Java 11 更可靠的选择我们可以自信地说,从 Java 11 迁移到 Java 17 不会像从 Java 8 迁移到 Java 11 那样痛苦。

相关链接:​​https://www.jenkins.io/blog/2022/06/28/require-java-11/​

出品 | OSC开源社区(ID:oschina2013)



好书推荐


《Java核心技术》第 12 版根据 最新的 LTR 版本 Java 17 全面更新,涵盖了 Java8-17 全部版本的特性,相应调整了部分内容结构,同时延续之前版本的优良传统,利用清晰明了的示例加以解释,并提供了全部示例代码,以便读者学习和灵活应用。它将续写从前的辉煌,使开发者能及时跟上 Java 前进的步伐。


标签:11,弃用,Java,17,版本,Jenkins,迁移
From: https://blog.51cto.com/u_15105906/5991440

相关文章

  • Java中的List、Set、Map
         本文主要介绍java中list,set和map的区别。<!--Error-->List按对象进入的顺序保存对象,不做排序或编辑操作。Set对每个对象只接受一次,并使用自己内部......
  • Java Annotation-注解
    Java注解(Annotation)是JDK5.0引入的一种注释机制。Java语言中的类、方法、变量、参数和包等都可以被注解。和Javadoc不同,Java注解可以通过反射获取标注内容。在编译器生成......
  • JavaScript之正则表达式
    JavaScript之正则表达式search()方法&replace()1<!DOCTYPEhtml>2<html>3<head>4<metacharset="utf-8">5<title>JavaScript正则表......
  • JavaScript事件触发列表与解说
    一般事件事件浏览器支持描述onClickHTML:2|3|3.2|4Browser:IE3|N2|O3鼠标点击事件,多用在某个对象控制的范围内的鼠标点击onDblClickHTML:2|3|3.2|4Browser:IE4|N4|O鼠标......
  • Java简单仿制在创建同名目录时名称拼接(数字)
    /***创建同名文件名称拼接(数字)**@parampath需要创建的目录*@return*/publicstaticStringrecursionMkdirsFile(Stringpat......
  • Android Studio 生成JavaDoc
    菜单位置配置GenerateJavaDocScope(生成文档的作用范围),可根据自己需求自行配置。导包若报错找不到android的某些包,可添加如下依赖(可能是由于JavaDoc没有导入An......
  • java读取虚拟串口数据
    语言:java虚拟串口工具:VirtualSerialPortDriverPro9.0,选择pairing模块下,点击addvirtualparing按钮即可创建串口对,还无法自定义out和in。串口助手:xcom2.6,在串口选择......
  • 直播app源码,Java的输入输出
    直播app源码,Java的输入输出第一种输入方法:scanner importjava.util.Scanner;//导入java.util.ScannerpublicclassUser{  publicstaticvoidmain(String[]......
  • idea为java程序添加启动参数(program arguments,vm arguments,Environment variable)
    programarguments作用programarguments 中的值作为args[]的参数传入应用程序,书写格式参数1参数2参数3注意:参数之间要以空格分隔,如果参数值中间有空格,则用引号......
  • Java synchronized
    synchronized是java提供线程间同步的重要机制保证在同一时刻,被修饰的代码块或方法只会有一个线程执行,以达到保证并发安全的效果java内存模型:先通过一个生产者消费者例......