在开发者们正兴奋着准备把Java8工具包转向Java9的时候, 甲骨文的首席执行官提出了要限制两个版本的兼容性。

在周一下午OpenJDK邮件列表的一封邮件中,甲骨文Java平台的首席架构师Mark Reinhold指出会对JDK8增加更多变化(大概在2014年初),也就意味着JDK9这片“森林”,这一个目录或者一组目录很快就会到来。所以现在开发者们要开始思考如何应对这两个版本的变化。

一般来说,他们会先在新的开发版本上做些改变然后再加入到旧版本中。在发布这种新的JDK8的准备时期做了比新版本更多系统集成测试,但是,这对新版本的发布没有太大的意义。因为新版本会先发生变化,所以会拖慢最终版本的发布。

在这之前,到JDK7发布的时候,都还没有处理并行变化问题的策略。Sun或者Oracle团队里面的成员会对最终版本进行半自动的合并,直到把这种合并变的不切实际时,开发者第一时间就是对将要发布的版本作出改进。开发者们会被要求同时对这两个版本作出改进。那么之前调试的数据库的数据会被用来帮助改进新的版本。

Reinhold还表示,“这种方法之前都运行不好,无论半自动的合并是否还在进行,它都需要数百名开发者对新版本的每个阶段进行监督和贡献。一旦这些合并停止了,他们就要立刻改变他们的工作集成方式。”

为了简化最终版本的过程,Reinhold指出JDK9的开发会从特定的JDK8构造中开始初始化。“在那构造完成之后,这两个版本就不再允许合并。开发者对JDK8作出改变的时候也要同时对JDK9作出改变,如果那个变化适用于JDK9.”

Reinhold希望这些改变能整顿好整个开发的流程。“我认为这里面唯一的缺点就是它无法从JDK9重构建JDK8 GA,因为它是从JDK8 GA之前的GA中分离出来的。如果能做到这一点,我感觉是很方便很酷的,这比技术更具有审美价值。这种状况跟你不能从JDK8中构造一个JDK7的新版本是一样的道理。”

为了能更方便的在多核处理器上编码,基于Java的标准版本8,JDK 8被设计成支持Lambda项目,预览的构建已经可以使用了。随后的JDK 9版本,预计在2016年初发布,将会增加项目拼图和Java模块化功能的特性。

相关阅读:

java8和9兼容吗_甲骨文限制 Java 9 到 Java 8 的向后兼容性相关推荐

  1. java 向后兼容性_关于java:JDK“向上”还是“向后”兼容?

    向后二进制兼容性(或向下兼容性) - 使用旧版本库API构建的客户端在新版本(wiki)上运行的能力. 向上二进制兼容性(或向前兼容性) - 使用新版本的库API构建的客户端在旧版本(wiki)上运行 ...

  2. java生成pdf图表_开发员指南:使用Java图表转换为PDF/JPG等图像

    Aspose.Cells for JavaExcel电子表格处理API,它允许Java开发人员在自己的Java应用程序中嵌入可读取.写入和操作Excel电子表格的能力,而无需依赖Microsoft E ...

  3. 【JAVA基础】java基础之-java8新特性

    写在前面的话 脑子是个好东西,可惜的是一直没有搞懂脑子的内存删除机制是什么,所以啊,入行多年,零零散散的文章看了无数,却总是学习了很多也忘了很多. 痛定思痛的我决定从今天开始系统的梳理下知识架构,记录 ...

  4. java11模块化开发_【JDK 11】关于 Java 模块系统,看这一篇就够了

    继 2014 年 3 月 Java 8 发布之后,时隔 4 年,2018 年 9 月,Java 11 如期发布,其间间隔了 Java 9 和 Java 10 两个非LTS(Long Term Supp ...

  5. java 基础面试 英文_[Java面试] 面试java基础总结大全

    原标题:[Java面试] 面试java基础总结大全 基础知识: 1.JVM.JRE和JDK的区别: JVM(Java Virtual Machine):java虚拟机,用于保证java的跨平台的特性. ...

  6. 第三方工具监控java进程_前9个免费的Java进程监视工具以及如何选择一种

    第三方工具监控java进程 这样就可以运行Java代码了. 也许它甚至可以在生产服务器上运行. 当您做好工作后,我们得到了好消息和令人讨厌的消息. 令人讨厌的消息是,现在开始调试. 就是进行调试和应用 ...

  7. java安装_如何在 Mac 上安装 Java | Linux 中国

    macOS 用户可以运行 Java 的开源版本,以及用于云原生开发的新框架. 来源:https://linux.cn/article-12393-1.html 作者:Daniel Oh 译者:MCGA ...

  8. java runtime environment 55_jre7下载|Java Runtime Environment(Java运行环境JRE)JRE7 官方版_ - 极光下载站...

    JRE7是Java运行环境,(JRE为JavaRuntimeEnvironment的简称,Java运行环境),JRE7运行JAVA程序所必须的环境的集合,包含JVM标准实现及Java核心类库. jav ...

  9. 甲骨文携手各界共庆Java 20周年

    本文讲的是 :   甲骨文携手各界共庆Java 20周年 , [IT168信息化]可曾记得你用Java写的第一句话"Hello World"?你的第一本Java书籍的封面?你调试的 ...

最新文章

  1. [Eclipse] - 解决导入flask模块出现的Unresolved Import flask问题
  2. linux vss rss区别,关于VSS / RSS / PSS / USS的解释是否准确?
  3. 【抽象代数】代数系统、群与商群
  4. javascript指南_JavaScript指南
  5. 内存工作原理及发展历程
  6. arcengine 图层中节点抽稀功能(c++)
  7. memcached的安装(server、client)、magent整合
  8. python多线程和多进程
  9. linux系统pdf目录编辑器,Linux操作系统(三)编辑器与实用程序.pdf
  10. 北大等多所高校网站被挂马 高考生浏览需小心
  11. DB2数据库下载(v9.7/v10.5/v11.1)
  12. android获取显示屏尺寸大小,Android 屏幕各尺寸的获取
  13. 圆形头像制作,仿QQ做法。
  14. revel MySQL_mysql – 如何在Revel Controller中访问Gorm?
  15. 常见嵌入式/C/C++面试题100+集合(含参考答案)-更新中
  16. 360提示证书风险问题
  17. 读书笔记之《程序员你为什么这么累-晓风轻编码规范》
  18. 第二十章 Unity 渲染管线
  19. 潭州学院html学习(day06)
  20. 豪门赘婿!扮猪吃虎!面试10多家软件测试工程师经验分享!

热门文章

  1. Angular formControl指令定义的位置
  2. SAP Spartacus Focusdirective继承自Lockdirective,静态代码分析
  3. Angular jasmine单元测试框架spec的运行时数据结构
  4. 如何在Slack里连接微软One Drive
  5. SAP Spartacus的b2cLayoutConfig
  6. SAP UI5应用如果遇到数据绑定问题时,应该如何自己定位问题?
  7. windows10在线升级失败后的一些补救措施
  8. SAP Fiori Elements遇到问题时,该如何调试?
  9. 把Hybris Commerce本地tomcat的keystore给本机的tomcat使用
  10. attachment old API read - DB debug