Eclipse Foundation Wants OSGi to be Considered for Java 8 - Jigsaw Doesn't Cut it
According to the new schedule for OpenJDK development, the former JDK 7 specs have been broken up into JDK 7 and JDK 8 under Plan B. While Oracle says they have a bunch of features that are nearly ready, other major platform changes like Project Jigsaw and Project Lambda (closures) are not as mature, therefore, Lambda and Jigsaw have been postponed until JDK 8, which is scheduled to ship in late 2012 (Milinkovich predicts early to mid 2013). Jigsaw is a low-level module system similar to OSGi, but Milinkovich thinks this isn't enough:
We are no where near as positive about the Java 8 JSR [as we are about JDK7]. … We are just not comfortable that the direction of the Java 8 team will do an adequate job of bridging the divide between the OSGi world and whatever modularity model is decided upon for the platform. Which potentially means that Java 8 may ship in late 2012 (actually I predict early-to-mid-2013) with a modularity model which is orthogonal to, and incompatible with OSGi. In our opinion, that would be a disaster for the Java platform and the Java ecosystem. --Mike Milinkovich
This clearly seems like a criticism of Project Jigsaw, although he doesn't mention it by name. OSGi has been very important to Eclipse for quite some time. Milinkovich reminds readers that OSGi is the basis for the Eclipse platform's plug-in model. Eclipse hosts OSGi projects like Virgo and Gemini while also using OSGi as the basis for its ESB implementations and Java EE application servers.
I am not saying that OSGi is a panacea. There are lots of people out there who will happily tell you about all of the reasons why it is imperfect. For example, despite the fact that its roots are in embedded, it objectively has been a failure in the Java ME space. My point is that it is deeply ingrained in the Java ecosystem and in the architectures of many of the most successful Java products out there. I cannot imagine a scenario where ignoring or trying to replace it in a major Java platform release two and a half years from now can be anything other than a train wreck. … Unless we see sufficient accommodation for OSGi in the Java 8 JSR we will be voting No. --Mike Milinkovich
Go here and read the full blog posting.