Dustin Marx is a software developer who enjoys identifying and using the correct tool for the job. In addition to writing software and writing a blog on software development, Dustin occasionally presents at conferences and writes articles. Dustin is a DZone MVB and is not an employee of DZone and has posted 237 posts at DZone. You can read more from them at their website. View Full User Profile

Project Jigsaw Booted from Java 8?

  • submit to reddit

In his post Project Jigsaw: Late for the train, Mark Reinhold’s proposes "to defer Project Jigsaw to the next release, Java 9." He explains the reasoning for this: "some significant technical challenges remain" and there is "not enough time left for the broad evaluation, review, and feedback which such a profound change to the Platform demands." Reinhold also proposes "to aim explicitly for a regular two-year release cycle going forward."

Based on the comments on that post, it seems that this news is not being particularly well received by the Java developer community. Markus Karg writes, "In fact it is a bit ridiculous that Jigsaw is stripped from JDK 8 as it was already stripped from JDK 7. ... Just give up the idea and use Maven." Jon Fisher writes, "I don't think this is a good idea for the java platform. ... Delaying this will only turn java in to a leagacy technology." The comment from ninja is, "Whatever route you guys decide to go, I think it's time to prioritize Java the platform ahead of Java the language."

Although this news is generally receiving unfavorable reviews from the Java developer community, the explanations do differ to some degree. Some of those commenting think the modularization of Project Jigsaw is needed now (already may be too late), others think OSGi (or Maven or Ivy) should be used instead and Project Jigsaw abandoned, others would rather get other new features and aren't worried about the modularization being pushed to Java 9, and others simply want to use Groovy or Scala instead. The question was posed whether other features of Java 8 should be dropped in favor of Jigsaw.

As one of the two "flagship" features of Java 8 (lambda expressions being the other one), I too am disappointed to see that it is likely that modularity will be delayed until Java 9. However, Reinhold points out that if the proposal to jettison Jigsaw from Java 8 is accepted, "Java 8 will ship on time, around September 2013" and is planned to "include the widely-anticipated Project Lambda (JSR 335), the new Date/Time API (JSR 310), Type Annotations (JSR 308), and a selection of the smaller features already in progress."

I really want a new Date/Time API and I think the lambda expressions will dramatically improve what we can do in Java. Because of this, I'll be excited to get my hands on Java 8 even without modularity.

Published at DZone with permission of Dustin Marx, author and DZone MVB. (source)

(Note: Opinions expressed in this article and its replies are the opinions of their respective authors and not those of DZone, Inc.)



Andreas Schilling replied on Wed, 2012/07/18 - 2:47am

Why don't people stop mixing up Build systems and Module systems? I find it quite annoying that those strange posts from the referenced blog are pushed into other blogs/community sites without any comment. OSGi (or Jigsaw as well) are alot more than just having a few JARs lying around after your build finished.

Charlie Mordant replied on Wed, 2012/07/18 - 6:22am

You're right +Andreas, Maven is not a Jigsaw alternative, OSGI is.

Daniel Benzing replied on Wed, 2012/07/18 - 1:19pm in response to: Charlie Mordant

Agreed. ...and yes +Andreas. I really enjoyed the posts commenting on OSGi as an epic failure; I must have missed that. Somebody should inform IBM and Google of this. What's the probability these posters use Eclipse as their IDE? Finally, after dealing with POM hell and Maven repo configuration nonsense for years, I've pleasurably switched to the PDE/P2 for release engineering.

Comment viewing options

Select your preferred way to display the comments and click "Save settings" to activate your changes.