The flagship feature of Java 9 will be the new Java Platform Module System (JPMS). Given the maturity of OSGi there were technical, political and commercial reasons why another Java module system will soon exist. In this article we compare the two from a technical perspective and see how JPMS and OSGi can work together.
Project Jigsaw is the hallmark feature of Java 9, the next major version release of Java, and is destined to bring modular programming into the Java mainstream. After years of negotiating and myriad JSRs and JEPs, Jigsaw is starting to take its final form. This tutorial considers all aspects of programming and migration to Project Jigsaw.
Eight years in the making, Project Jigsaw is finally coming to Java 9. With the potential to introduce breaking changes to your code, modularization will certainly change the way we think about our projects and the JDK itself. In this article, Nicolai Parlog tells us what we need to know and what we need to do to prepare
Regular InfoQ Java contributor Dr. Alex Blewitt has recently published a follow-up to last year’s "Eclipse 4 Plug-in Development by Example”.
Peter Kriens announced his return to the OSGi Alliance, where he served as director for 11 years until early 2012. InfoQ caught up with Peter to discuss his return and latest project jpm4j.
Java Application Architecture: Modularity Patterns with Examples using OSGi is Kirk Knoernschild's seminal book on a pattern catalogue for modular systems design.
Mulesoft recently released Mule 3, their next generation ESB platform. InfoQ caught up with Ross Mason to learn more about the product release and learn about the new features in the product offering.
The fourth of the Modular Java series covers declarative modularity. It describes how components can be declaratively defined and wired together, without having a code dependency on OSGi APIs. 11
Porting great infrastructure to OSGi often means solving complex classloading problems. This article is dedicated to one of the the hardest issues in this area: dynamic code generation. 3
This third part of the Modular Java series discusses dynamic modularity, how a bundle's classes are resolved, how they can come and go, and how they can communicate with each other. 2
This second part of the Modular Java series discusses static modularity, the creation of bundles, how to install them into an OSGi engine and how to set up (versioned) dependencies between bundles. 3
Over the last few years, modularity for Java has been an active discussion topic. Several JSRs show modularity is necessary for Java's evolution. What does modularity mean, and why should you care? 4