|
Re: Why is there a uses conflict without disjoint ranges? [message #835675 is a reply to message #835660] |
Tue, 03 April 2012 10:33  |
Eclipse User |
|
|
|
I didn't have time to re-read the blog in detail (and note it was my personal blog, not the OSGi Alliance's) or the diagnostics above, but uses constraints can be violated without disjoint version ranges being present. For example, suppose you resolve some bundles which contain a single exporter of a package p at version 0 and importers of p with no version range restriction (the default, "0", is equivalent to [0,oo)). Then deploy a bundle which exports p at version 1 and another which imports p with a version range [1,1]. The import version ranges are not disjoint, but we have set up one of the necessary conditions for a uses constraint violation: multiple exporters of a package which are both wired to. (To get a uses constraint violation, you'd need to add another package into the mix with suitable uses constraints, imports, and exports.)
I'm afraid I can't say what's wrong without spending the necessary time reading the diagnostics in detail. I suggest you use the admin console OSGi state explorer to look at the OSGi state dump which should have been generated and focus in on packages which have more than one exporter and which are mentioned in the above diagnostics, trying to figure out what tied the importers to wire to different exporters.
Virgo repeats found conflicts if the underlying errors in Equinox are repeated. Virgo actually does quite a bit of work to remove unnecessary duplication, but sometimes duplicates slip through the net.
Hope that's some help!
|
|
|
Powered by
FUDForum. Page generated in 0.02803 seconds