Eclipse 4 RCP - how to create project? - eclipse

I am using eclipse 4 application platform for building custom ide like app, but i am still not sure what libraries i can use.
For instance i can't find some API which is responsible for maintaining projects.
Is it even possible to create project or this is just part specific for eclipse as IDE and can't be used if i am using e4 rcp?

The org.eclipse.e4.rcp, org.eclipse.emf.core and org.eclipse.emf.ecore Eclipse features list all the plugins that a pure e4 application uses.
The list includes most of the org.eclipse.core.xxx plugins but not the org.eclipse.core.resources plugin which contains the workspace code (things like IFile and IWorkspace).
So if you want projects and workspaces you would have to write you own code for that - which would not be compatible with any other Eclipse 3.x plugins.

Related

Missing plugins when exporting Eclipse e4 RCP Application containing Birt (Eclipse 2019-3)

Currently I am in the process of moving one of our RCP applications from an older version of Eclipse to the current version 2019-03.
Our application is feature based an makes use of the Birt report generator.
When trying to lauch the application via its product-file lots of unresolved plugin requirements appear, as the combination of RCP and Birt now seems to depend on different versions of org.apache.batik.* (1.7.0 and 1.8.0).
I can get the app running by manually enabling the different versions via Run -> Run Configurations -> Plugins. But of course this does not help when trying to export the RCP through the Eclipse product export wizard. The exported app is missing various plugins.
So I tried to manually edit the manifest.mf of the plugin that is dependent on birt:
Require-Bundle:
org.apache.batik.css;bundle-version="1.7.0",
org.apache.batik.css;bundle-version="1.8.0",
...
But this does not seem to have any effect on the plugins beeing exported.
The tip to switch back to a plugin-based project (How best to maintain an Eclipse RCP plugin target? 1 ) does not seem to work either.
So does anybody know how to get Eclipse to export all required versions of the org.apache.batik plugins?
Thanks a lot in advance!
Tom

How to add my bnd jars dependencies to my eclipse RCP application?

I have some core plugins created in my workspace that are built with BND tools in eclipse. Now I have to reference those core plugins in my eclipse RCP application which is developed with PDE tool in eclipse. But there is no visibility to the BND generated plugins inside the RCP application. May be I can manually copy those plugins to a folder and add the folder to the target. But I want to get rid of such manual task.
Is there any easy way to add the BND generated plugins as dependencies to my RCP application?
Thanks in advance.
I didn't try with recent version of eclipse and bndtools
But you can try my experiment done 4 year ago
https://github.com/filippor/bndPdeTarget

How to localize an Eclipse RCP 4 application using Eclipse Babel?

I am developing an Eclipse RCP product in Eclipse e4 environment using Kepler for RCP developers on 64-bit Linux and Java 7.
I'd like to use Eclipse Babel language packages within my Eclipse product. Copying features and plugins directory into Eclipse IDE directory works without a problem. I can run my Eclipse environment in the language I want by passing -nl argument.
I used PDE to produce a product and applied the same step by simply copying the language package into the product's features and plugins directory. However, it did not work as I see OK and Cancel button labels still in English.
Is it correct to simply copy the files or do I have to add an extra dependency?
Thanks.

Use Eclipse Classic to develop Eclipse RCP application

I've been using Eclipse Classic for developing applications in Java installing plugins as I need. Now I'm thinking to develop an application using Eclipse RCP UI. I've read some tutorials online but they suggest to use Eclipse for RCP/RAP developers.
I've looked at this Eclipse Packages Compare page but I haven't quite figured out why I can't use Eclipse Classic to develop Eclipse RCP applications.
What plugins do I have to install to use Eclipse Classic for Eclipse RCP application development?
There is very little (practical) difference between those two packages. Classic (AKA, Eclipse SDK) includes more source code for the Eclipse bundles themselves, such as JDT and PDE, which can actually be useful when developing your own plugins and RCP apps); RCP/RAP obviously includes RAP, which is critical if you need it but pointless if you don't. RCP also includes EGit (again, nice if you need it) and the XML Tools.
I often start with the SDK (Classic) package and add stuff as I need it. There has even been talk of dropping the RCP package altogether, although it still hangs around.
What plugins do I have to install to use Eclipse Classic for Eclipse RCP application development?
Trust me, you're much better off unziping Eclipse for RCP/RAP developers in a different directory, and using that to develop your RCP application.
You're lucky that adding Eclipse plug-ins to your Eclipse Classic hasn't destroyed your Java development environment.

What's the difference between the "Java EE" and "rcp" distributions of Eclipse?

What are the differences, specifically, between the Java EE and RCP versions of Eclipse?
And how would one essentially get a "combined" version that includes all the best goodies for plugin development along with the best tools for Java EE?
I think what I'm looking for is the ability to create a "merged" instance entirely through the p2 updater. For example, if I open up a Java EE instance of Eclipse, open a java file, hit alt-shift-f1 to bring up plugin spy, and then click on "compilationuniteditor" to view the source of the java editor, I get .class. But in the RCP version, I get the source. How do I get those things in the Java EE editor using the normal Eclipse update mechanism? That's my goal here. What plugins in update manager contain what "essential bits" for each distribution.
Another example is installing all the Examples plugins. In the RCP distribution, you can easily install them from the "Welcome" page. So how, in the Java EE distribution, could you do the same thing?
The problem I'm trying to solve here is that I want to get away from maintaining two separate instances of Eclipse, since I do a fair amount of work in both RCP (for plugin development) and in Java EE (for webservice stuff, etc).
I started with the Eclipse for RCP Developers and used the "Help > Install New Software..." Feature to add in the "Web, XML, and Java EE Development" tools from the "Galileo" update site.
You may want to be a little choosier than I was and maybe exclude the "Rich Ajax Platform" and possibly the "PHP Development Tools" Features from the category.
It's better to use the "Install New Software" feature than to try and merge directories. The dependencies can be fairly complex and troubleshooting a merged directory can be a nightmare. Let p2 do the heavy lifting.
You can get a full comparison of all eclipse distros here.
Basically, the J2EE one includes the RCP ones, except for the fact that the RCP has the sources of some plugins, and not just their binaries.
To get a mix of the two, load them both, unzip them, and then compare the content of plugins and features sub-directories of both installations (with WinMerge for instance).
Copy any extra RCP files into the J2EE directories, and that should be enough.
From my understanding, the Java EE version comes with plugins for developing java programs whereas the RCP version includes the minimum number of plugins to build a rich client application.
These links should help:
http://wiki.eclipse.org/RCP_FAQ
http://wiki.eclipse.org/index.php/Rich_Client_Platform