Monday
Oct012007

« Another opinion on the OSGi/JSR 277 debate »

I recently posted an article about the debate surrounding JSR 277 and OSGi. Some quick background on the debate is:

  • OSGi (a.k.a. JSR 291) is a successful technology for packaging up Java software in a modular manner, and it has over 8 years of development behind it. It is also used in popular products like Eclipse and WebSphere
  • Sun is trying to develop a technology for adding components in a modular manner to the JVM - this is being handled as part of JSR 277, which is expected to be in Java 7
  • There are two OSGi experts on the JSR 277 expert group 

At this point, the rest seems obvious - Sun will utilize the experience and learning of the OSGi experts, and create a modular system based off of OSGi. 

Well, that's incorrect. Reading the JSR 277 mailing list has given people the impression that the two OSGi experts are being ignored, and that the bulk of the JSR 277 expert group appears to be making the same mistakes OSGi did at the beginning. There is also speculation that the expert group wants to do everything by itself, and doesn't want to use a technology that was developed by an external organization (referred to as "Not Invented Here syndrome"). This has caused a furious debate in the Java community around JSR 277, and there does not appear to be a resolution in sight.

The idea behind JSR 277 is a good one - it is an excellent idea to make the JVM itself modular, as this will allow it to be far more flexible in many situations. For instance, Java is used a lot on the server side - for those applications, you don't need Swing or any of the Java graphics libraries in your JDK - they can be removed. Conversely, if you develop an application and it wants to use several open source libraries e.g. Hibernate and Spring, then under JSR 277 there is a repository that the JVM would automatically look up those libraries in, and it would be able to dynamically install that capability into the JVM. That is a feature with a ton of potential (I've used Maven 2.0, it's amazing to not have to manually find libraries), and I'd hate to see it become unmanageable or broken due to political bickering. In my opinion, the JSR 277 expert group should start with JSR 291 as the basis since it is a proven, industry-accepted technology, and then explicitly change whatever is necessary to support the new requirements like ClassLoader handling and the JSR 277 repository mechanism. This is Glyn Normington's dream solution, and in a non-political, technology-centric world I believe it is the best possible solution.

Reader Comments (1)

<h1>discount designer bags</h1> cheap and fashion
<h1>designer inspired handbags</h1> Acclaimed
<h1>air max 2011</h1> high quality
<h1>nike shox tl3</h1> wholesale nike
<h1>women puma shoes</h1> Particular style
<h1>air max tn</h1> Different
<h1>puma shoes</h1> Very famous
<h1>puma shoes online</h1> Popular brands
<h1>women timberland boots</h1> A great feeling
<h1>wholesale gucci shoes</h1> Online Sales

December 19, 2011 | Unregistered Commenterfdsfds

PostPost a New Comment

Enter your information below to add a new comment.

My response is on my own website »
Author Email (optional):
Author URL (optional):
Post:
 
Some HTML allowed: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <code> <em> <i> <strike> <strong>