Java 8:长期支持的堡垒

斯蒂芬·科尔本 ( Stephen Colebourne )的文章“ Java 9可以使用六个星期 ”开始,“ Java 9仅仅六个星期 就已过时。” Colebourne参考了Mark Reinhold博客文章“ Moving Java Forwarding Faster ”,并写道:“新的Java发布训练意味着将每六个月发布一个Java新版本。 而当下一个版本问世时,先前的版本已过时。” Colebourne指出,仍然使用Java 8的用户可以享受此“当前LTS(长期支持)版本,直到下一个LTS版本(Java 11)出现为止”。 但是,对于那些已经使用Java 9的人,必须做出不同的选择,Colebourne会在较高级别概述这些选择。 Colebourne概述了几种类型的依赖关系,这些依赖关系还必须每六个月向前发展一次,并得出结论:“我认为可以说使用Java 9或10是一个大胆的选择。”

作为提醒,前面提到的Reinhold博客文章“ Java更快地前进 ”概述了新的建议发行版如何解决“开发人员之间的紧张关系,开发人员喜欢快速创新,而企业喜欢稳定性,每个人都喜欢定期且可预测的事实。发布。” 以下是此新发行培训方法的关键点:

  • “采用严格的基于时间的模型,每六个月发布一次新功能 ,每季度发布一次更新,每三年发布一次长期支持 。” (我增加了重点
  • Feature Releases (“包含任何类型的功能”)分别于每年的3月9月发布,第一个发布于2018年3月(Colebourne写道“ Java 9的生存期为六个星期”时提到的JDK 10 )。
  • 更新版本 (“严格限于安全问题,回归和新功能中的错误的修复”)发生在功能版本之间,每个功能版本之间有两个更新版本,并按季度周期安排在1月4月7月十月
  • 从2018年9月开始,每三年一次的长期支持版本与功能版本相同。这些长期支持版本的更新至少要等到下一个长期支持版本才能提供,并且通常可能会比这三个版本更长。
  • 有关Java发布系列的其他详细信息,请参见#javatrain Twitter句柄 ,“ 常规OpenJDK讨论”分发列表 ,“ Oracle Java SE支持路线图 ”页面和 “ 更快,更容易使用和重新分发Java SE”页面。 。”
  • 最近宣布 ,“ Oracle的Java SE 8更新的公开可用性至少已延至2019年1月”,并且“ Oracle将继续通过以下方式为消费者提供个人(非企业)使用Java SE 8的更新:至少到2020年底。”

Colebourne并不是唯一一个警告Java开发人员考虑从Java 8迁移到Java 9的后果的人。在文章“ Java 9:无长期支持和两次JDK发行”中, Carly Yuk写道“ Java 9将无权进行长期维护。” Yuk补充说:“在产品中运行应用程序的企业可能希望考虑等待将来的长期发布。” 保罗·克里尔(Paul Krill)写道:“ Java 9将不会获得长期支持 ”,而本·埃文斯 ( Ben Evans)则表示: “由于甲骨文宣布Java 8将成为长期支持版本,到2022年将得到支持,埃文斯认为很多应用程序可能会保留在Java 8上,而根本不会升级到Java9。”

在决定是否升级到Java 9时要考虑很多事情。 没有唯一的“正确”答案,因为Java的情况,环境,优先级和用途差异很大。 通常,较大的“企业”类型应用程序的开发人员可能只希望采用长期支持版本,较小的应用程序的开发人员可能会愿意采用功能版本和相关的更新版本以更快地访问新功能。 在“快速创新”和受支持的稳定版本之间进行选择的能力是新发行版火车的驱动动力之一。

翻译自: https://www.javacodegeeks.com/2018/02/java-8-bastion-long-term-support.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/348189.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

我的2020(年终总结)

我的2020 2020对每个人来说可能都是极不平凡的一年,对我尤其是。这一年我整个的人心境发生了极大的变化。总结来说,有这么几件大事:复试、毕设、大学毕业、研究生开学、分手、再脱单、疫情在家。今天坐在实验室也不知道该干点什么&#xff0…

Java学习 第三章 数组(二)多维数组

多维数组的使用 由数组构成的数组 二维数组: ① 二维数组的声明和初始化 ② 如何调用数组的指定位置的元素 ③ 如何获取数组的长度 ④ 如何遍历数组 ⑤ 数组元素的默认初始化值 :见ArrayTest1.java 数组元素是整形:0 数组元素是浮点型&…

Spring Boot 2中的功能切换

无论您是否喜欢,软件开发都是一项协作活动。 整合工作一直被妖魔化,并被视为必不可少的邪恶。 有几种方法可以解决有效集成的挑战。 功能切换开关属于该组。 在本文中,您将在实践中看到如何在Spring Boot应用程序中使用功能切换(也…

Java学习 第三章 数组(三)排序算法

** Java学习 第三章 数组(三)排序算法 ** 主要内容:排序算法、排序算法横向比较、Arrays工具类的使用、数组常见异常 1.数组中涉及到的常见算法:排序算法 1.1 排序算法分类:内部排序和外部排序 1.2 十大内部排序算…

【强化学习】一些网站整理

莫烦教程 https://mofanpy.com/tutorials/machine-learning/reinforcement-learning/ 博客园:刘建平Pinard https://www.cnblogs.com/pinard/category/1254674.html Deep-Q-Network 学习笔记 https://www.cnblogs.com/cjnmy36723/p/7017549.html 强化学习到深度强…

xmx java_为什么我的Java进程比Xmx消耗更多的内存?

xmx java你们有些人去过那里。 您已经在启动脚本中添加了-Xmx选项,并放松了下来,因为您知道Java进程将不会消耗比经过微调的选项所允许的更多的内存。 然后,您感到非常讨厌。 要么自己检查开发/测试框中的过程表,要么事情真的变坏…

卫星通信系统概述

卫星通信系统指通过在轨人造卫星作为中继站对无线电信号进行转发,实现地面及空间等用户之间信息传输的系统。卫星通信系统组成包括空间段及地面段,系统组成如图所示。其中空间段主要指在轨卫星、对在轨卫星进行操控的地面站,这些地面站主要实…

ElasticSearch初学者教程

1.简介 在此示例中,我们将演示如何使用Elasticsearch , Elasticsearch是一个基于Apache Lucene的分布式自由文本搜索和分析数据库引擎,具有一个基于maven的简单Java客户端。 在撰写本文时,我们将使用最新版本的Elasticsearch&…

博弈论与纳什均衡

三十分钟理解博弈论“纳什均衡” – Nash Equilibrium https://blog.csdn.net/xbinworld/article/details/50932559 纳什均衡(Nash equilibrium)及经典案例 https://blog.csdn.net/u010420283/article/details/83927742 论文: [1] 刘帅军. 卫星通信系统中动态资源…

Opnet入门

一、opnet快速入门 1.系统界面&文件菜单说明 2.常用文件名后缀及描述 3.Opnet建模层次 用户只有一种节点域模型 三、 OPNET Modeler网络仿真机制 1.事件的属性 每次点击next会出现以下界面: 2.事件的执行 调度型:按照正常程序调度事件 强制性&…

JSON的JUnit Hamcrest Matcher

这篇文章展示了如何编写JUnit测试来检查对象是否与JSON字符串匹配。 如果您要实现REST服务并想测试您的服务是否产生了预期的JSON响应,那么这一点很重要。 JSONassert是比较JSON对象的有用库。 首先,您必须将Java对象转换为JSON字符串(例如&…

Python列表推导式

列表推导式 是Python构建列表(list)的一种快捷方式,可以使用简洁的代码就创建出一个列表,即循环创建列表. for可以用来创建列表,列表推导式就相当于是for循环的简化版 1. 最简单的情况 values [10, 21, 5, 7, 12] squares [] …

一些python函数及其用法

1.np.ravel()方法 ravel是将数组维度拉成一维数组,也就是将矩阵向量化 x np.array{ [ [ 1 , 2 , 3 ] , [ 4 , 5 , 6 ] ] } print(np.ravel(x))输出 [ 1 2 3 4 5 6 ]2.b a[np.newaxis,:] import numpy as np a np.arange(0, 10) print(a…

使用Spring WebFlux进行操作

Spring Boot 2.0最近在GA上线了,所以我决定在相当长一段时间内写我的第一篇有关Spring的文章。 自发布以来,我已经看到越来越多的提到Spring WebFlux以​​及有关如何使用它的教程。 但是,在阅读完它们并尝试使它们自己工作之后,我…

【强化学习】Policy Gradient原理

1.Policy Gradient和DQN系列强化算法最大的区别在于: DQN系列基于Value,也就是说执行完所有的动作并保存所得到的价值,根据这些价值计算出最优价值函数,并以此选择动作,最终获得一个特定的策略。 Policy Gradient基于策…

ajax的url怎么将后缀补上_蜂蜜杏仁怎么做?杏仁和蜂蜜腌制方法

蜂蜜杏仁怎么做?杏仁和蜂蜜腌制方法蜂蜜杏仁是一种非常好吃的小零食,很多小可爱都喜欢吃蜂蜜杏仁。不过有些时候忘记补货,就会断粮,于是大家都想要在家里自制蜂蜜杏仁。不过你知道蜂蜜杏仁应该怎么做吗?蜂蜜杏仁的做法其实并不难&#xff0…

【强化学习】Policy Gradients代码注释版本

import gym # import tensorflow as tf import numpy as np# Hyper Parameters GAMMA 0.95 # discount factor 折扣因子 LEARNING_RATE 0.01 # 学习率class Policy_Gradient():# 咱们来搞一下大头!def __init__(self, env): # 初始化# 先初始化一些参量sel…

c语言构建栈_选择技术栈构建通用平台

c语言构建栈Java社区中有许多关于Spring vs Java EE的话题。 一群人会争辩说您应该使用一个而不是其他。等等。当我看到这一点时,我不禁要想为什么我们不能同时使用它们呢? 实际上,我认为有效地使用它们将为建立基础架构创建一个伟大的技术堆…

【强化学习】Actor Critic原理

PG算法是一种只基于policy的一种方法,存在的问题就是该算法需要完整的状态序列,且单独对策略函数进行迭代更新,不太容易收敛。 Actor-critic方法呢是一种将 策略(Policy Based)和价值(Value Based)相结合的方法。下面继续来理一下AC方法的思路…

Java 9:对Process API的增强

Java 9对Process API进行了各种改进,用于控制和管理操作系统进程。 获取有关流程的信息 有一个新的ProcessHandle类,提供了进程的pid,父级和后代,以及有关开始时间和累积CPU时间的信息。 jshell> Process p new ProcessBui…