[
Date Prev][
Date Next][
Thread Prev][
Thread Next][
Date Index][
Thread Index]
[
List Home]
Re: [p2-dev] Problem installing feature due to unhelpful version range requirements
|
I suspect that part of the problem is the use of Includes vs Requires in
your features. Quite separate from p2, features have always used exact
versions for "included" things and version ranges for "required"
things. So when you author your feature to require something and spec a
range, that should be translated into the same range in p2 metadata and
you should be happy.
Jeff
Francis Upton wrote:
I am using the standard PDE build scripts that call p2.generator to
generate the metadata in my repository. I have many features and
products and they are all generated to the same repository. So far so
good.
The problem I'm having is the feature.group (e.g.
com.oaklandsw.transform.feature.deps.gui.feature.group) in the
content.xml get generated with a version range requirement that is
exactly the versions of the plugins that are installed in the Eclipse
build I'm running against. In my source feature.xml, all of the
versions are 0.0.0 which is what I want, but the p2.generator does not
use my source, it uses the feature.xml that winds up in the build
output, which has all of the versions put into it.
This means that when installing this feature, it will insist on having
these exact versions of the plugins, so because I built it on a 3.4.0
system, it will not properly install on a 3.4.1 system (it gets the
usual cryptic error message about unable to satisfy the dependency).
If I manually hack the content.xml file to remove these range
attributes, I run into a related problem. My product depends on the
org.eclipse.rcp feature group, and this feature group in the
content.xml (like all of the others) has the exact plugin versions.
So the installation will again get a conflict (on swt this time)
because the org.eclipse.rcp feature in the installation target does
not match the one generated in the content.xml.
I'm sure somewhere I took a left turn that I should not have and there
is an easy solution to this mess, but I have not yet found it.
Any ideas?