I'm looking for a Java library/framework that will allow me to build RCP applications which have rich editor like user facing features (think Eclipse, Netbeans, IntelliJ) The following features should be handeled out of the Box:

  1. I should be able to create views in my Code (tool windows), when such a window is opened it should be possible for the user to dock it to the sides of the main window and stack multiple tool windows in tabs between which the user can change. Undocked Views should also be possible
  2. I should be able to define "actions" in my Code (for example: "Save file") this action should appear in a user configurable menu and on a toolbar, the user should be able to rearrange the toolbar at will.
  3. I should not need to deploy modules to the framework. Meaning I don't want to build "jar" files and drop them somewhere. Rather I'd like to be able to start my application directly from a main class which will then detect my modules added to it in some way (service discovery?) this should allow me to create a single jar containing my application AND the framework, also it should allow me to directly start and debug the application from an IDE without requiring remote debugging

Features 1 and 2 are provided by the Netbeans Platform and Eclipse RCP however both require deploying things (Eclipse supports loading of unjarred modules which is nicer but still not great - I can't build a single jar of the final product) as far as I can tell Netbeans does not even support loading of unjarred modules.

What are my options?

Edit: the "running from ide without building jars" aspect of the deployless setup is what I'm looking for mostly, Eclipse kind of allows that but only when also using Eclipse as the IDE to develop the application (as the Eclipse Plugin build system is.. Strange). Generally when having to deploy modules to some system it takew much longer to see the code changes in action. -> turnaround time for play framework or embedded jetty are much lower than for websphere for example. I would like a fast and hassle free development -> running app process ideally using a modern build system (maven, gradle, sbt?) and intellij as IDE. Building Eclipse plugins using maven unfortunately is not smooth.

  • 1
    Please keep in mind that you will run into license problems if you start to package frameworks in your jar. The standard way is to deliver a set of libraries is in a lib folder and link that from the MANIFEST.MF of your main jar. So, unless you have a really significant special case don't do that. (Imagine one lib has CDDL, one has BSD and one has GPL. You include all license files, but which does apply to which code? Make your live easy - use a lib dir.) – Angelo Fuchs Feb 6 '15 at 9:14
  • 1
    Could you explain somewhat more what the actual problem is you try to solve? Why do you want to ship everything in one jar? The Stack Exchange Network is best at solving actual problems, here you present us with a search for a library that most likely won't exist. So, please elaborate on what is the underlying problem you try to solve. – Angelo Fuchs Feb 6 '15 at 9:48

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Browse other questions tagged or ask your own question.