[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [Newsgroup Home]
[news.eclipse.tools.buckminster] Re: Best way to include launchers in an RCP build

Hi Thomas,

I've been looking for a suitable workaround and failed. Instead I've uncovered more differences between buckminster and PDE. The most difficult is that products installed from sites created using buckminster don't run. The following error is found in the log.

!ENTRY org.eclipse.osgi 4 0 2009-08-12 16:46:39.875
!MESSAGE Application error
!STACK 1
java.lang.IllegalStateException: Unable to acquire application service. Ensure that the org.eclipse.core.runtime bundle is resolved and started (see config.ini).
at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:74)
at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:368)
at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:179)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
at java.lang.reflect.Method.invoke(Unknown Source)
at org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:559)
at org.eclipse.equinox.launcher.Main.basicRun(Main.java:514)
at org.eclipse.equinox.launcher.Main.run(Main.java:1311)


If I add the application plug-in to the configuration tab of the product configuration the product works. What's happening here? Is PDE adding some configuration by default?

Also, looking at the issue of having to include the executables feature, it has another unpleasant side effect of making the feature available in the resulting p2 repository which I don't want.

I really want to have a buckminster build which can produce similar results from the same source currently processed by a PDE build. I think many people migrating from PDE Build to buckminster will want this.

To workaround these issues I am having to consider using buckminster only for materializing the target platform and fetching the source and then handing things over to PDE Build for to create the p2 repository. However I would lose the revision based qualifier substitution which I find very useful. Any suggestions as to how I can work around would be greatly appreciate. Maybe it's easier to help resolve these problem in buckminster?

Thanks,
Tas


"Tas Frangoullides" <tfrangoullides@xxxxxxxxxxxxxxxxxx> wrote in message news:h5rie3$p6f$1@xxxxxxxxxxxxxxxxxxxx
Hi Thomas,


Following the mailapp tutorial I've noticed that the org.eclipse.equinox.executable needs to be included in the product feature so that launchers are included when the product is created. You don't need to do this when using the PDE build

That's actually a modified truth. If your objective is to create a repository from with the application can be installed onto more then one platform, then you must have the executable feature. If you don't, you can only create the application for the same platform as the one you're currently building from.

This is what I really like about the approach supported by buckminster of creating a multi-platform site first. Is there a way to have the feature included in the site but not the installed product. I tried creating a site feature and moved the executables feature into that but this didn't work.


and you actually get a different product in terms of installed features. Also there is the bug relating to icons. Is there a way to arrange the features or build so that both PDE and Buckminster produce identical results?

Not at present. There's a bug in how the launcher is branded and my guess (unverified) is that the PDE build somehow cheats at the end to work around that bug. I haven't found any way to create the correct meta-data just yet. At present, you'll get two launchers every time. We're working on that.

Fair enough. I'll just find ways to work around this in my build, maybe looking into how PDE gets round them is a good starting point.


Thanks,
Tas