felix-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Guillaume Nodet (JIRA)" <j...@apache.org>
Subject [jira] [Updated] (FELIX-4478) Resolution failure with fragments
Date Sat, 05 Apr 2014 14:22:14 GMT

     [ https://issues.apache.org/jira/browse/FELIX-4478?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel

Guillaume Nodet updated FELIX-4478:

    Summary: Resolution failure with fragments  (was: Resolution failure)

> Resolution failure with fragments
> ---------------------------------
>                 Key: FELIX-4478
>                 URL: https://issues.apache.org/jira/browse/FELIX-4478
>             Project: Felix
>          Issue Type: Bug
>          Components: Resolver
>            Reporter: Guillaume Nodet
> I'm having problems with fragments when using the resolver api.  Those bundles are working
fine with the framework resolver though, but I have currently no idea where the difference
> The first problem is when I have a fragment which specifies packages which are imported
and exported at the same time.
> I end up with the following exception:
> {code}
> Error executing command: Uses constraint violation. Unable to resolve resource org.apache.karaf.shell.console
[org.apache.karaf.shell.console/4.0.0.SNAPSHOT] because it exports package 'org.apache.karaf.shell.commands'
and is also exposed to it from resource org.apache.karaf.shell.core [org.apache.karaf.shell.core/4.0.0.SNAPSHOT]
via the following dependency chain:
>   org.apache.karaf.shell.console [org.apache.karaf.shell.console/4.0.0.SNAPSHOT]
>     import: (&(osgi.wiring.package=org.apache.karaf.shell.console.completer)(version>=4.0.0)(!(version>=5.0.0)))
>      |
>     export: osgi.wiring.package: org.apache.karaf.shell.console.completer; uses:=org.apache.karaf.shell.commands
>     export: osgi.wiring.package=org.apache.karaf.shell.commands
>   org.apache.karaf.shell.core [org.apache.karaf.shell.core/4.0.0.SNAPSHOT]
> {code}
> In the above org.apache.karaf.shell.console is fragment, org.apache.karaf.shell.core
is its host and both org.apache.karaf.shell.commands and org.apache.karaf.shell.console.completer
packages are imported/exported by the fragment.
> Trying to work around this issue, I removed the imports on the fragment.  But I have
another exception with different bundles:
> {code}
> Error executing command: Uses constraint violation. Unable to resolve resource org.apache.karaf.jaas.blueprint.jasypt
[org.apache.karaf.jaas.blueprint.jasypt/4.0.0.SNAPSHOT] because it is exposed to package 'org.apache.aries.blueprint'
from resources org.apache.aries.blueprint.core [org.apache.aries.blueprint.core/1.4.0] and
org.apache.aries.blueprint.core [org.apache.aries.blueprint.core/1.4.0] via two dependency
> Chain 1:
>   org.apache.karaf.jaas.blueprint.jasypt [org.apache.karaf.jaas.blueprint.jasypt/4.0.0.SNAPSHOT]
>     import: (&(osgi.wiring.package=org.apache.aries.blueprint)(version>=1.3.0)(!(version>=2.0.0)))
>      |
>     export: osgi.wiring.package: org.apache.aries.blueprint
>   org.apache.aries.blueprint.core [org.apache.aries.blueprint.core/1.4.0]
> Chain 2:
>   org.apache.karaf.jaas.blueprint.jasypt [org.apache.karaf.jaas.blueprint.jasypt/4.0.0.SNAPSHOT]
>     import: (&(osgi.wiring.package=org.apache.aries.blueprint.ext)(version>=1.1.0)(!(version>=2.0.0)))
>      |
>     export: osgi.wiring.package: org.apache.aries.blueprint.ext; uses:=org.apache.aries.blueprint
>     export: osgi.wiring.package=org.apache.aries.blueprint
>   org.apache.aries.blueprint.core [org.apache.aries.blueprint.core/1.4.0]
> {code}
> In the above, the problem is that org.apache.aries.blueprint.core bundle has a fragment
attached, and when debugging, I found out that the two chains are actually compatible, but
one is using the bundle capability while the other is using the host wrapped capability (which
are considered different).
> Not really sure where to look at, especially as i have no problems when actually deploying
the bundles.

This message was sent by Atlassian JIRA

View raw message