Closed
Description
In the Apache Log4j project we support multiple versions of the same library (in different Maven modules).
In order to do that, in the parent POM we specify the version of the library via a Maven property:
<properties>
<slf4j.version>2.0.9</slf4j.version>
</properties>
<dependencyManagement>
<dependencies>
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-api</artifactId>
<version>${slf4j.version}</version>
</dependency>
</dependencies>
</dependencyManagement>
and we overwrite the property value in the child POM:
<properties>
<slf4j.version>1.7.25</slf4j.version>
</properties>
This works very well with Maven, since the "inheritance assembly" phase precedes the "model interpolation" phase (cf. Maven Model Builder).
However, as reported by one of our users (cf. apache/logging-log4j2#2065) this doesn't work with Coursier: in the above example Maven with choose version 1.7.25
while Coursier will choose version 2.0.9
.
Metadata
Metadata
Assignees
Labels
No labels