Java 模块化项目 Jigsaw 能否重回正轨?

  • Victor Grazi
  • 赵震一

2014 年 8 月 4 日

话题:Java语言 & 开发架构

模块化的粉丝们会很高兴的听到这一消息,Jigsaw 项目已经重新提上日程,至少也是部分回到了正轨。

今年 7 月的早些时候,甲骨文首席 Java 架构师 Mark Reinhold 在他的一篇题为“《Jigsaw 项目:第二阶段》”的博文中告诉我们,在“过去的几年里”,jigsaw 项目“处于一个探索阶段,在这个阶段中,我们设计并建立了一种特别的方式来处理需求的草案集。”

回溯到 2011 年 6 月,最初曾打算将 Jigsaw 包含在 Java 7 的发布中,该宏伟计划由两个主要的部分组成。第一部分是一个几乎可以与 OSGi 竞争的模块化框架。第二部分是将 Java 平台本身真正地拆分成多个可挑选组合的模块。

但是最终该项目却公布了将会推迟到 Java 8。然而这个计划却再次搁浅,Reinhold 在他的博文“Jigsaw 项目:没搭上这趟火车”中请求 JSR 337 (Java 8) 专家组再次将 Jigsaw 项目的发布延期至 Java 9。根据甲骨文宣布的两年 Java 周期和 Reinhold 的博文“安全的火车”来看,该版本目前已计划在 2016 年早期发布。在那不久后,Jigsaw 项目的延期请求便得到了批准。

通过查看 Reinhold 的计划,可以看到 Jigsaw 项目原有的范围在经历了多次“减数分裂”后成为了四个 JEP(Java 改进建议):

  1. 提出一个具体的 JDK 模块化结构;
  2. 根据以上结构重新组织 JDK 源代码(不包括二进制文件);
  3. 第三个建议是将二进制映像文件进行模块化;
  4. 第四个 JEP 是将为 Java 自身引入模块化系统,这将与模块化系统 JSR 保持一致。

你可以通过 Jigsaw 项目的“目标和需求”文档来了解更多该项目的最新动向。也可以加入jigsaw-dev 邮件列表来参与该项目的持续讨论。

Java 9 早期版本的二进制文件已经可以在java.net上进行下载。Java 9 JSR 目前尚未提交,这使得一些开发者很想知道下一班火车会不会又跳过这一站。

查看英文原文:Is Project Jigsaw Back On Track?

Java语言 & 开发架构