Monday, June 9, 2008

PDE Target Platform from different locations (Bugs)

I'm using Eclipse Riena for my ERP project. Riena's version is actually 1.0.M2 for Eclipse 3.3.

Riena provides an already configured target platform as download - featuring bundles from Eclipse SDK, Equinox and Riena, also some 'foreign' bundles like Hessian, Log4J, ... - but all these bundles are from Eclipse Platform SDK / Equinox 3.3.

So I had to manage the task to build a new target platform designed to run with Eclipse 3.4 (actually version 3.4.RC3).

We need:

  • Eclipse Platform SDK 3.4 (as IDE and target platform)
  • Equinox SDK 3.4 (target platform)
  • Riena - Bundles (target platform)
  • other Bundles from Riena - distribution (target platform)

Target Definition File (Bug using different locations and versions)

From my opinion the easiest (and comfortable) way in such situations is to create a Target Definition File: Menu File --> New --> Target Definition:

As usual I'm working with variables, so the definitions are easy to port into other workspaces and Eclipse versions.

Under Overview I choose / add three locations: Riena, Equinox und SDK.

Under Content I can select which of the plug-ins I want to use in my target platform.

Unfortunately it doesn't work as expected :-(

If you try to add the plug-ins you're seeing only plug-ins from one location - there's no way to decide which plug-ins should be selected from which locations.

Bug 233095 ([target] deal with multiple versions of bundles and different locations)

Target Platform Preferences (Bug using different locations and versions)

The next try: to build the target platform directly using Preferences --> Plug-in Development --> Target Platform:

Using Add... different locations can be selected. If Group plug-ins by location is marked you can see all plug-ins from these locations.

Then its possible to select the bundles you need from each of the 3 locations (Riena, SDK, Equinox). The example above shows 110 of 467 bundles selected.

Doesn't this look nice ? Yes - and after hitting Apply you can start your Riena - Server, run Tests etc.

Now the best you can do is to never restart Eclipse ;-) ... after restarting eclipse you'll see:

Now there are only 53 instead of 110 plug-ins (bundles) selected for your target platform - and the selected ones are other ones then before.

Bug 233096 Preferences - PDE - target platform - after restart selection changed

So because of these two bugs its not possible to build target platforms from some locations if there are multiple versions of plug-ins.

BTW: Please vote for bugs 233095 and 233096, if you also need to be fixed. thx.

this blog in german:

1 comment:

André said...

thanks! It helped a lot! I wanted to try the riena apps but did have to build the target platform on my own (I run linux). I discovered your posts to the newsgroup and here we go. Great to have a community ;-)