There is a lot of misinformation and misunderstanding about what Java 7
will provide with regard to modularization. In fact, I'm not even sure I
know the correct answer here. Take that as a disclaimer as I run the
risk of spreading more misinformation based on my understanding of the
matter:
* Java 7 will include new language constructs and corresponding JVM
enhancements to support modularity. But Java 7 does not define a
modularity implementation.
* Jigsaw does provide a modularity implementation based on the Java
7 enhancements. But, as another response indicated, Jigsaw's
primary goal is to modularize the JDK itself (so that you can
pick-n-choose the parts of the JDK that your app needs and ignore
the rest).
* That said, Jigsaw can be used by application developers to
modularize their work. But that's not the primary aim of Jigsaw
and thus it's possible that Jigsaw may not meet the needs of
application developers.
* As another response indicated, Jigsaw does not define a dynamic
modular system. My understanding of that is that it means that
Jigsaw will not allow modules to come and go in a running
application. I also read into it that Jigsaw will not allow
multiple versions of the same module to reside concurrently in an
application. (Both of which OSGi allows.)
* I do not believe that Jigsaw provides for service-orientation as
OSGi does. In my opinion, this is one of the things that makes
OSGi powerful...in that one part of an application can use another
part of the application as a service without any knowledge of how
that service is implemented or where it resides--it only needs to
know the interface.
Again, this is based on my poor understanding of the matter. I welcome
anyone who is more well-versed in Java 7 and Jigsaw to correct me--if
I'm wrong, I really want to know how I'm wrong.
Elliot Huntington wrote:
I haven't looked into Java 7 too much but I heard Java 7 will be
modifying the Java Specification to include bundles/modularity. Does
anyone know more regarding this and how it will compare with OSGi?
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]