Details
-
Bug
-
Status: Closed
-
Blocker
-
Resolution: Done
-
3.5.2, 3.5.3, 3.5.4
-
None
-
Ubuntu 16.0.4 LTS, Ubuntu 18.0.4 LTS, Mac OS High Sierra, Oracle and OpenJDK 8, Oracle Java 11,
Description
As of maven 3.5.2, 3.5.3, 3.5.4, the following pom fails with the error
"dependencies.dependency. Main:MainJar:1' for Main:MainJar:1 is referencing itself"
But the dependency is not circular, it references a classified jar (in our use cases its an architecture-dependent native code container jar). The pom below allows the main jar to be built without building the dependency every time (other lines conditionally build the dependency), and ensures the appropriate pre-built dependency is loaded. Behavior in maven 3.5.0 and earlier was correct (i.e. no error). This breaks several of the usage scenarios for classified artifacts...
<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/xsd/maven-4.0.0.xsd"> <modelVersion>4.0.0</modelVersion> <groupId>Main</groupId> <artifactId>MainJar</artifactId> <packaging>jar</packaging> <version>1</version> <dependencies> <dependency> <groupId>${project.groupId}</groupId> <artifactId>${project.artifactId}</artifactId> <version>${project.version}</version> <classifier>linux</classifier> </dependency> </dependencies> </project>