Community
Participate
Working Groups
See bug 216934. Instead going forcing all bundles in eclipse to forget about the Export-Package "uses" clause to avoid a performance issue, we should add an option to bypass the extra checks all together. There are two options we can consider: 1) Simply ignore the uses clauses altogether and allow for an inconsistent class space to be wired together. 2) Use the first combination of constraint solutions and unresolve any bundles that cause an inconsistent class space. The first option seems a bit dangerous but may be necessary in some cases. I like the second option because it at least ensures that a consistent class space is resolved. But it may not allow for the maximum number of bundles to be resolved because we just used the first solution which may not be the optimal one. I propose adding an option osgi.resolver.usesMode with values of "ignore", "tryFirst", "tryAll". ignore - act as if no bundles specified any "uses" clauses tryFirst - use the first solution available, if there are conflicts in the first solution then unresolve the conflicted bundles tryAll - search all possible solutions until a solution is found with no conflicts is found. If no such solution exists use the one with the least amount of conflicts.
Created attachment 88616 [details] patch Patch to add new options for uses processing.
Patch released.