Hi John
No they are not interchangeable, which is how I came across the
problem.
They both do magic ClassLoader wizardry to support injection, and so
when some plugins use variant A and dependent plugins use variant B
the end result is a Guice class injection failure.
For OCL, the problem was avoidable. Xtext uses variant A and OCL's
extended Xtext used variant B, so an M4a OCL build corrects it.
However it may not be avoidable tomorrow, because Acceleo also uses
variant B, so if I have a plugin dependent on both Acceleo and
Xtext, my plugin must use both variant A and B.
From a different perspective, it seems a break in binary
compatibility. Since both packages are available somewhere in the
staging repository, P2's standard 'find the missing bits' enables an
Xtext editor that hasn't been fully rebuilt to install correctly but
fail at run time.
Regards
Ed Willink
On 16/12/2011 05:57, John Arthorne wrote:
Ed Willink wrote on 12/16/2011
08:39:27 AM:
> Does no-one have a view on whether provision of the
> com.google.common.collect package by two distinct Orbit
bundles is
> acceptable?
Purely from an OSGi point of view it's
perfectly fine
for multiple bundles to export the same package. I'm sure we
have plenty
of other cases of this in the release train. There are even
cases where
there are multiple copies of the same bundle (with different
versions).
I don't know anything about the specific details of this
package - does
it causes problems for an application if they get wired to the
wrong one?
I.e., are the two packages interchangeable from the
perspective of a consumer?
John
_______________________________________________
cross-project-issues-dev mailing list
cross-project-issues-dev@xxxxxxxxxxx
https://dev.eclipse.org/mailman/listinfo/cross-project-issues-dev
No virus
found in this message.
Checked by AVG - www.avg.com
Version: 2012.0.1890 / Virus Database: 2108/4684 - Release Date:
12/16/11
|