On 6/19/09 8:31 AM, Guillaume Nodet wrote:
Let's say I have the following bundles:

foo-1.0:
Export-Package: a;version="1.0"
Import-Package: a;version="1.0"

foo-2.0:
Export-Package: a;version="2.0"
Import-Package: a;version="2.0"

I first install foo-2.0 on the runtime, then bundle foo-1.0.

Reading section 3.7, the outcome of the overlapping package resolution
could be either external or internal, but at the end of section, it
says "An exporter with a higher version is preferred over an exporter
with a
lower version."

So the question is, would this be legal for the runtime to resolve
those bundles the following way:

foo-2.0:
Export-Package: a;version="2.0"
foo-1.0:
Export-Package: a;version="1.0"

Yes, this would be legal. As I mentioned on the d...@felix list, the framework has wiggle room in decided when to use the import or the export if the bundle does both. At least that is my understanding of the spec.

However, I feel that it does make the most sense to pick an overlapping version to avoid another class space and if foo-1.0 doesn't want that, then it should change its metadata to avoid it.

-> richard

or does it have to be:
foo-2.0:
Export-Package: a;version="2.0"
foo-1.0:
Import-Package: a;version="2.0"

_______________________________________________
OSGi Developer Mail List
[email protected]
https://mail.osgi.org/mailman/listinfo/osgi-dev

Reply via email to