Java将每半年发布一个版本

jopen 7年前
   <p style="text-align: center;"><a href="/misc/goto?guid=4958993268727801487" title="Java"><img alt="Java将每半年发布一个版本" src="https://simg.open-open.com/show/80aef14f07f1d8e160504c27cd780c7d.gif" /></a></p>    <p>Oracle 近日宣布,他们将 Java 的发布频率改为每六个月一次。</p>    <p>JCP 执行委员会在八月份的<a href="/misc/goto?guid=4959010739324431448">会议</a>上提到了这一说法,随后,Oracle 发言人 Donald Smith 在他的<a href="/misc/goto?guid=4959010739464882605">博客</a>中确认了这一消息。该决定将在 Java 9 正式发布之后开始实行,也就是说,Java 的下一个发布日期是 2018 年初。</p>    <p>除了发布周期,Oracle 还宣布了在 Java 的构建和发布方式方面所发生的主要变化。Oracle 将把 OpenJDK 的二进制包作为面向开发者的主要版本,取代之前的 Oracle JDK。</p>    <p>OpenJDK 将采用 GPLv2 许可(包括“类路径例外”)免费发行,移除了之前在 Oracle JDK 上存在的一些限制。Oracle JDK 仍然会继续存在,但需要与 Oracle 签订协议才能获得 Oracle 提供的长期支持。</p>    <p>Java 首席架构师 Mark Reinhold 说,为了<a href="/misc/goto?guid=4959010739588238610">避免出现像 Java 8 和 Java 9 那样的延期情况</a>,所有决定实行新的发布周期。</p>    <p>Java 当前的发布周期为两年一次,Java 9 因为模块化系统(Jigsaw)问题一再延期,已经比预期晚了 18 个月。之前,Java 8 也因为安全问题延期了 8 个月左右。Java 9 的 GA 版本将在 9 月 21 号发布。</p>    <p>新的发布周期严格遵循时间点,将在每年的 3 月份和 9 月份发布,相应的版本号为 18.3、18.9、19.3 等。与现在的发布周期不同,新的发布计划不会为了等待某个主要特性完成而延期。如果一个特性还没有完成,它就不会被合并到发布用的代码仓库里。如果错过了一个版本,就要等待下一次发布。</p>    <p>新的发布周期旨在避免未完成的里程碑特性(比如 Java 8 的 Lambda 或 Java 9 的模块化系统)造成发布延期,让其他一些有用的特性也无法与开发者见面。</p>    <p>除了新的发布周期,Oracle 将会继续每个季度发布更新版本,时间分别为 1 月份、4 月份、7 月份和 10 月份。也就是说,在下一个大版本发布之前,当前版本都会有两个更新版本。更新版本只包含安全问题修复或回归错误的修复。</p>    <p>Reinhold 说:</p>    <blockquote>     <p>开发者希望加快速度,这样他们就能够尽快地在生产环境中使用新的特性。</p>    </blockquote>    <p>对于没有必要快速升级 Java 版本的企业和组织来说,Oracle 建议他们签订每三年一次的长期支持(Long Term Support,LTS)协议。他们因此可以获得由 Oracle 提供的至少三年的支持,还有可能更长时间,这要取决于市场的反应。</p>    <p>Oracle 建议第一个 LTS 版本为“18.9”,不过这需要与其他的 OpenJDK 贡献者讨论过后才能最终确定。Java 8 被作为一个特别的 LTS 版本,支持日期截止到 2025 年。</p>    <p>Smith 说:</p>    <blockquote>     <p>OpenJDK 是开发者了解和使用 Java SE 平台最主要的渠道,而 Oracle JDK 继续作为 Oracle 收费用户的 LTS 版本。</p>    </blockquote>    <p>伦敦 Java 社区的负责人 Martijn Verburg 也发表了他对新发布周期的看法:</p>    <blockquote>     <p>新的 Java 发布周期对于 Java 生态系统来说是一件好事情。Java 9 的 Jigsaw 和孵化模块问题促成了这一局面的发生。</p>     <p>Oracle 确实面临着发布方面的巨大挑战,不过 OpenJDK 社区拥有足够的知识来帮助一起解决挑战。</p>     <p>我希望看到中间会有所突破,不过对常规的发布周期仍然很期待。其他实现者可以更早地访问到规范的草案,这样他们就可以更早、更经常地发布版本。</p>    </blockquote>    <p>Oracle 的 Java 发布速度经常受到诟病,Java 被广大的企业组织所采用,并已成为大量开源平台和语言的基础,而这样的发布速度让 Java 处于很尴尬的境地。新的 Java 发布周期恰好满足了广大用户的期望,不过这仍然需要等待 Java 开发者和 Oracle 用户的反馈。</p>    <p>来自: <a href="/misc/goto?guid=4959010739712671116" id="link_source2">InfoQ</a></p>