You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@maven.apache.org by Brett Porter <br...@apache.org> on 2009/10/02 01:49:35 UTC
Re: Transitive Dependencies: Is the parent or child dependency the "nearest dependency"?
If you care, you should add the one that you want to the
dependencyManagement element of your POM rather than trying to
workaround this.
As for Maven itself, I would have expected parent to come first - but
it's not as simple the first level being first, it's rather which is
encountered first - you'll see this via the trace when running with -
X. If you think there's an inconsistency between Maven 2.2.1 and
earlier versions then that might be a bug, but otherwise I would stick
with the resolution it chooses for now.
- Brett
On 02/10/2009, at 9:10 AM, Robert Winch wrote:
> There is a discrepancy in how m2eclipse (latest stable) resolves a
> version
> of a dependency and Maven 2.2.1 does and I am trying to figure out
> which is
> correct. I understand that the "nearest dependency" is suppose to be
> the
> version that is resolved [1]. I also understand that the first defined
> dependency is used if the depth is the same (Maven 2.0.9 or later).
> However,
> I am not sure which is resolved if the depth is the same and one is
> defined
> in a parent and the other in the child. I have copied the simplified
> example
> that reproduces the discrepancy in below [2]. The issue is that
> spring-webflow-1.0.6.jar (located in the parent) defines
> spring-core-2.0.7.jar as a direct dependency and spring-aop-2.5.6.jar
> (located in the child) defines spring-core-2.5.6.jar as a direct
> dependency.
> Which version of spring-core should be resolved? The m2eclipse plugin
> resolves spring-core-2.0.7.jar and Maven 2.2.1 resolves
> spring-core-2.5.6.jar.
>
> Thanks in advance :)
>
> [1]
> http://maven.apache.org/guides/introduction/introduction-to-dependency-mechanism.html#Transitive_Dependencies
>
> [2]
>
> parent
>
> <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="
> http://www.w3.org/2001/XMLSchema-instance"
> xsi:schemaLocation="http://maven.apache.org/POM/4.0.0
> http://maven.apache.org/maven-v4_0_0.xsd">
> <modelVersion>4.0.0</modelVersion>
> <groupId>parent</groupId>
> <artifactId>parent</artifactId>
> <packaging>pom</packaging>
> <version>1.0-SNAPSHOT</version>
> <dependencies>
> <dependency>
> <groupId>org.springframework</groupId>
> <artifactId>spring-webflow</artifactId>
> <version>1.0.6</version>
> </dependency>
> </dependencies>
> </project>
>
> child
>
> <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="
> http://www.w3.org/2001/XMLSchema-instance"
> xsi:schemaLocation="http://maven.apache.org/POM/4.0.0
> http://maven.apache.org/maven-v4_0_0.xsd">
> <parent>
> <artifactId>parent</artifactId>
> <groupId>parent</groupId>
> <version>1.0-SNAPSHOT</version>
> </parent>
> <modelVersion>4.0.0</modelVersion>
> <groupId>child</groupId>
> <artifactId>child</artifactId>
> <packaging>war</packaging>
> <version>1.0-SNAPSHOT</version>
>
> <dependencies>
> <dependency>
> <groupId>org.springframework</groupId>
> <artifactId>spring-aop</artifactId>
> <version>2.5.6</version>
> </dependency>
> </dependencies>
> </project>
---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@maven.apache.org
For additional commands, e-mail: users-help@maven.apache.org