[
Date Prev][
Date Next][
Thread Prev][
Thread Next][
Date Index][
Thread Index]
[
List Home]
Re: [aether-users] Versioning fun with Aether milestones
|
Andreas Sewe wrote:
In the above, org.eclipse.m2e.maven.runtime is the sole provider of
com.google.inject 1.4, which org.eclipse.aether.maven *optionally*
imports. But wiring org.eclipse.aether.maven to
org.eclipse.m2e.maven.runtime places a uses constraint upon all
importers of org.eclipse.aether.maven's packages: they need to get their
other Aether packages from org.eclipse.m2e.maven.runtime.
After some initial research yesterday, I'm having trouble making sense
out of this analysis. AFAIK, OSGi is proud of its package-level
granularity when it comes to wiring dependencies. If that's right, how
does wiring the package org.apache.maven.repository.internal to
org.eclipse.m2e.maven.runtime *for com.google.inject* impose a uses
constraint *for org.eclipse.aether* packages?
Export-Package: org.apache.maven.repository.internal;
uses:="com.google.inject,..."
AFAIU, the uses directive here forces that importers of
org.apache.maven.repository.internal that also import com.google.inject
get wired to the same exporter of com.google.inject as
org.eclipse.aether.maven.
I fail to see how this affects the wiring of org.eclipse.aether
packages. Wiring the org.eclipse.aether.* imports in
org.eclipse.aether.maven to org.eclipse.aether bundles seems like a
valid configuration to me from the manifests and OSGi rules, no?
Benjamin