Oracle has hit out at IBM and Red Hat Middleware for their continued opposition to its proposed plan to make Java modular.
IBM has suggested it will vote against the JPMS JSR that Reinhold leads – JSR 376. The result for the Community vote on JPMS is due to be announced on June 8.
Mark Reinhold, Oracle’s Java Platform chief, called IBM’s position on the Java 9 Module System (JPMS) "disappointing", "surprising" and a threat to Java.
A vote against the JSR, he warned here, would delay completion of the next version of Java and be a “vote against the Java Community Process itself.”
IBM’s JPMS member Tim Ellison had come out against JPMS in its current incarnation, saying the proposal was not ready and lacked group consensus. “While I understand the desire to keep the process moving along, I believe there is a value in listening to the collective wisdom of the EG and respecting their opinion,” Ellison wrote on JPMS thread here, adding: “Multiple EG members have said we are not ready yet.”
However, it seems as far as Reinhold is concerned, consensus cannot be achieved because Red Hat has voiced strong concerns over JPMS.
“The Process does not mandate consensus, and for good reason,” he wrote. "It intentionally gives Specification Leads broad decision powers, precisely to prevent EG members from obstructing progress in order to defend their narrow interests.
“If you take away that authority then you doom future JSRs to the consensus of self-serving ‘experts’,” he added.
“Many failed technologies have been designed in exactly that way.”
Red Hat’s EC member Scott Stark outlined his concerns with JPMS here. Boiled down, Stark fears that, if implemented, the JSR would break existing Java apps.
The Linux spinner is a keen user of Java, which runs on its JBoss middleware.
Reinhold called Red Hat’s position “disappointing but not surprising” and reckoned the firm’s attempt to promote a different modular system seemed an attempt to “preserve and protect their home-grown, non-standard module system.”
He was referring to Red Hat’s WildFly application server, formerly JBoss application server.
WildFly loads libraries as modules that only link to other modules and is used to fire-up an application in a modular environment, for speed and reliability. ®