Reputation: 305
I am developing plug-ins within an Equinox context. I have set up a target platform which contains the Equinox plug-ins my plug-in will depend on.
Now since I need some new components, I have created a mixed target platform, consisting of the existing platform plus some additional plug-ins from my developing Eclipse.
As soon as I mix these platforms (both 3.8) all my plug-ins are showing errors, and almost everything can not be resolved, e.g. "org.eclipse.*", although they are definitely present in the target platform.
When I remove the additional components, all the old components can be resolved again. Any ideas?
Upvotes: 1
Views: 691
Reputation: 11723
It seems that you are trying to include multiple versions of certain bundles in you target platform, while using the so-called "planner mode" for a Software Site location. (In the target editor UI, the planner mode corresponds to selecting the option "Include required software".)
In this mode, p2 takes the features that you have selected plus all transitive dependencies. This resolution is done in a way as if you were trying to install the selected features into Eclipse. This resolution fails if you include multiple versions of singleton bundles, which most Eclipse platform bundles are.
So if you need to have multiple versions in the target platform, you need to use the "slicer mode" (equivalent to de-selecting the "Include required software"). Note that in this mode, only the features and their included bundles are added to the target platform. You may need to add more features in case there are missing dependencies after activating the target platform with slicer mode.
Upvotes: 3