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

Jean-Baptiste Onofré deleted KARAF-2000:
----------------------------------------


> Add dependency convergence enforcement to Karaf build
> -----------------------------------------------------
>
>                 Key: KARAF-2000
>                 URL: https://issues.apache.org/jira/browse/KARAF-2000
>             Project: Karaf
>          Issue Type: Bug
>            Reporter: Raman Gupta
>            Assignee: Jean-Baptiste Onofré
>            Priority: Major
>              Labels: dependencies, maven, maven-enforcer-plugin
>
> Karaf should verify dependency convergence in its build, via the 
> <DependencyConvergence/> rule of maven-enforcer. Otherwise, it is easy to 
> have dependencies that transitively include other deps with a different 
> version of the same dependency.
> Here is an example from Karaf 2.3.0:
> {code}
> [WARNING] Rule 0: org.apache.maven.plugins.enforcer.DependencyConvergence 
> failed with message:
> Failed while enforcing releasability the error(s) are [
> Dependency convergence error for 
> org.apache.aries.blueprint:org.apache.aries.blueprint.core:1.0.1 paths to 
> dependency are:
> +-com.vivosys.testproject:project-dist:1.0-SNAPSHOT
>   +-com.vivosys.testproject:module1:1.0-SNAPSHOT
>     +-org.apache.karaf.shell:org.apache.karaf.shell.console:2.3.0
>       +-org.apache.aries.blueprint:org.apache.aries.blueprint.core:1.0.1
> and
> +-com.vivosys.testproject:project-dist:1.0-SNAPSHOT
>   +-org.apache.karaf:apache-karaf:2.3.0
>     +-org.apache.karaf:org.apache.karaf.client:2.3.0
>       +-org.apache.aries.blueprint:org.apache.aries.blueprint.core:1.0.1
> and
> +-com.vivosys.testproject:project-dist:1.0-SNAPSHOT
>   +-org.apache.karaf:apache-karaf:2.3.0
>     +-org.apache.aries.blueprint:org.apache.aries.blueprint.core:1.0.1
> and
> +-com.vivosys.testproject:project-dist:1.0-SNAPSHOT
>   +-org.apache.karaf:apache-karaf:2.3.0
>     +-org.apache.aries.blueprint:org.apache.aries.blueprint.cm:1.0.0
>       +-org.apache.aries.blueprint:org.apache.aries.blueprint.core:1.0.0
> {code}
> You can see that Karaf depends on blueprint core 1.0.1, but it also depends 
> on blueprint cm 1.0.0, which in turn depends on core 1.0.0. In practice, this 
> usually works out ok, but resolving these issues at build time is better.



--
This message was sent by Atlassian Jira
(v8.3.4#803005)

Reply via email to