Geertjan's Blog

  • October 18, 2009

Is Oracle's JDeveloper a Platform?

Geertjan Wielenga
Product Manager
There is an interesting mini-discussion on Javalobby, about whether Oracle's JDeveloper is a platform. And, as someone in that discussion points out: "JDeveloper is a platform." Indeed, the JDeveloper Wikipedia page makes it very clear:

Oracle JDeveloper is the main development platform for Oracle's tools. The core IDE exposes an API that other teams in Oracle use to build extensions to JDeveloper. BPEL, Portal, BI and other components of the Oracle platform all build their design time tool on top of JDeveloper. The same IDE platform also serves as the basis of another Oracle product, SQL Developer, which is geared specifically at PL/SQL and database developers.

It is statements such as these that continue to throw confusion into the discussion. Because, after all, yes, Oracle has an IDE (JDeveloper), just like Sun has an IDE (NetBeans IDE). And, yes, Oracle has a development platform (JDeveloper), just like Sun has a development platform (NetBeans Platform).

If you like, that's where the story ends.

However, I'd like to see examples of military, financial, and geological applications on the JDeveloper platform before the story ends for me. Applications such as Agile Client by Northrop Grumman:

Or, in fact, applications like any of these:


Yes, Oracle JDeveloper is a platform. But only if you're interested in creating development tools. Not if you're interested in creating sales systems, for example, such as the Sepix Sales System:

The NetBeans Platform doesn't simply offer APIs for extending its IDE (as JDeveloper does). It offers APIs for creating your own desktop applications, of any kind at all... and financial institutions, military organizations, oil & gas software providers, retailers, and on and on, have been making use of it for MANY years already. And making money off it too, by selling their software created on top of the NetBeans Platform. Typically, all these applications are very large, since the NetBeans Platform's main contribution is modularity/scalability, which is a concern specifically for applications that are either (1) large or (2) will potentially be large at some stage in the future. (And unlike Eclipse RCP, you get to keep your investment in Swing, as a brand new interview with an ex-Eclipse fan shows and this 3rd-party slideshow confirms.)

The word "platform" has been used and abused for so long, that the complete manifold differences between NetBeans Platform and the JDeveloper platform should not really be news. But it's worth mentioning for those who take pride in making superficial comparisons between apples and oranges. Oracle has nothing, in any shape or form, like the NetBeans Platform. The latter does not compete with any of the former's products in any way at all.

Join the discussion

Comments ( 12 )
  • hantsy Sunday, October 18, 2009

    May be like the open source IntelliJ IDEA, it is a IDE platform.

    What I cares how oracle deal with the relation between NetBeans and JDeveloper in future. Merge into one or give up one of them?

  • Suhail Manzoor Sunday, October 18, 2009

    Good point Geertjan. Though I do not use Netbeans as a platform, it is my primary IDE. I believe one of the reasons I ended up using it is because of Sun being Java's steward. I have used all the other IDEs out there and at the end of the day, we use what we use for a whole lot of reasons, some of them technical, some personal and some social. It is my prayer that Netbeans will thrive under Oracle.

    Thanks and Cheers


  • Casper Bang Sunday, October 18, 2009

    Well NetBeans started out much the same way. It's not too long ago, it was very hard to create non-IDE looking standalone apps. You could say, the NetBeans API's are so messy exactly for those reasons - massive internal refactorings. Also a process documented in Jaroslav Tulac's NetBeans book.

  • Burt Sunday, October 18, 2009

    @Casper: You're not really talking sense. There's a big difference between something being very hard and something being impossible. It's not possible, nor intended, to create your own desktop applications (other than developer tools) on top of JDeveloper, while it's always been possible (and intended) to do so on the NetBeans Platform. There's no intention whatsoever for JDeveloper to be used in that way.

  • Casper Bang Sunday, October 18, 2009

    @Burt: From my observation, this has been a gradual thing over the years, extracting an RCP modeled by what was going on in Eclipse.

    If memory serves me well, it wasn't until the NetBeans 5 timeframe we really started to see any RCP as a natural progression from IDE customization and plugins. This very blog appears to confirm that.

    Don't get me wrong, I love NetBeans. But I do get the impression that this is the start of some unnecessary pissing contest. Eclipse is further ahead than NetBeans, which again is further ahead than JDeveloper. That's really the end of the story as I see it.

  • Jason Parker Sunday, October 18, 2009

    Casper, many applications on the NetBeans RCP existed before NetBeans 5.0. And the NetBeans module system existed before Eclipse RCP did. And Eclipse is not further ahead at all if you want to use your Swing components in a framework -- only NetBeans Platform allows that. You will not find anyone disagreeing with that anywhere.

  • Jaroslav Tulach Monday, October 19, 2009

    @Geertjan: Don't give up and continue to repeat the basic facts. The confusion is so easy to make. That is why repeating again and again what NetBeans Platform really is seems necessary.

    Myths just deserve to be corrected. Thus it is also worth to repeat to every Eclipse lover that NetBeans is in public space few years longer than the other project, NetBeans was open sourced year sooner and that NetBeans Platform existed and was used by community sooner than the other project tried to spell RCP for the first time.

  • Casper Bang Monday, October 19, 2009

    All I know is that when I needed to build on a RCP back in early 2005, only Eclipse offered anything publicly and readily available. Believe me, that is not a myth.

    A little research supports this, as the first NetBeans RCP book came in 2007, 2 years later than the first Eclipse RCP book.

    Also, Tulach writes in his book "By 2003, we’d had enough. We took the first important step: we cleared out unwanted cross references and split the compilation of the OpenAPIs into logical parts.... it took another two years for the whole monolithic module to completely disappear."

    I love both Eclipse and NetBeans but for different reasons. Why does everything have to be so black and white?

  • Geertjan Wielenga Monday, October 19, 2009
  • Dean Schulze Monday, October 19, 2009

    The only people who use JDeveloper are Oracle consulting and those who have JDeveloper jammed down their throats by Oracle consulting.

    Oracle needs to stop reinventing the wheel because the wheels they reinvent have flat spots on them. Previous reinventions like JDeveloper, Oracle Linux, BC4J, etc. should be jettisoned in favor of contributing to successful community projects.

    I can't think of a single Oracle Java project that's been done with quality. Oracle's Java offerings are clunky, bloated, and bug-ridden.

  • Mike Thursday, January 27, 2011

    I realize that this is an ancient topic. However, your comments are misplaced. There is nothing that can be done using the NetBeans platform that cannot also be done using the JDeveloper platform. The only difference is that JDeveloper is a CLOSED platform, meaning that its use is reserved for internal purposes only. Restricted access does not imply restricted capability. Given access to the libraries, every one of your referenced examples could have been written using the JDeveloper platform.

  • sola Wednesday, April 27, 2011


    What you say may be completely true, but if the JDeveloper platform is an Oracle-internal platform then it is not a "platform" for the "average" application developer.

    I believe the post was trying to refer to this.

Please enter your name.Please provide a valid email address.Please enter a comment.CAPTCHA challenge response provided was incorrect. Please try again.