The Curse of Project Jigsaw: Why is Java 9 Delayed Over and Over Again?
JDK 9 release date is postponed to July 2017
With less than 200 days to the release of JDK 9, it’s being delayed again. The new release date has been updated to July 2017, four months later than the previously postponed date.
Pushing the date back
On September 13th, Mark Reinhold, the chief architect of the Java platform group at Oracle, posted his suggestion to postpone the release date for JDK 9. His email, which was published on Oracle’s mailing list, stated that:
“We are not, unfortunately, where we need to be relative to the current schedule. […] At this point it’s clear that Jigsaw needs more time.”
Mark also noted that the number of open bugs that are new in JDK 9 is larger that it was at this point in JDK 8, and that’s why he propose a four months delay. Mark put his offer up for vote, asking others on Oracle’s mailing list what they think about it.
It took a little over a month, but the official announcement finally arrived. On October 18th Mark posted an email saying that there were no objections to postpone the date, and published the new JDK 9 roadmap.
Moving the general availability date of JDK 9 back 4 months affected the entire schedule. It also pushed back the “All tests run”, “Zero bug bounce” and of course, “Release candidate” milestones:
- 2017/01/05 Rampdown Start
- 2017/02/09 All Tests Run
- 2017/02/16 Zero Bug Bounce
- 2017/03/16 Rampdown Phase 2
- 2017/07/06 Final Release Candidate
- 2017/07/27 General Availability
The Curse of Project Jigsaw
It’s no surprise that JDK 9 has been pushed again, and for the same reason – Project Jigsaw. This project has a long history of pushing Java versions back, moving from Java 7 to Java 8 and ending up as part of Java 9, hopefully.
Jigsaw aims to make Java modular and break the JRE to interoperable components. This mean that you’ll be able to create a scaled down runtime Jar (rt.jar) customised to the components a project actually needs.
The desire is to make Java scalable to small computing devices, improve security and performance, and mainly make it easier for developers to construct and maintain libraries. Considering the JDK 8 rt.jar has about 20,000 classes that are part of the JDK, even if many of them aren’t really being used in a specific environment – it’s a pretty big deal.
Mark addressed the reason for the delay on his original email, explaining that:
“We recently received critical feedback that motivated a redesign of the module system’s package-export feature, without which we’d have failed to achieve one of our main goals. There are, beyond that, still many open design issues, which will take time to work through.”
The current pushback tells us loud and clear that Jigsaw needs more time, and our only hope is that it’ll actually be a part of JDK 9, and not be pushed back to JDK 10. Or JDK 11. There’s no doubt it’s a critical and important project, and the community is willing to wait a little longer for it to be just right.
Reference: | The Curse of Project Jigsaw: Why is Java 9 Delayed Over and Over Again? from our JCG partner Henn Idan at the OverOps blog. |