Jan Hendriks created KAFKA-14677: ------------------------------------ Summary: Dependency conversion error Key: KAFKA-14677 URL: https://issues.apache.org/jira/browse/KAFKA-14677 Project: Kafka Issue Type: Bug Components: build Affects Versions: 3.1.2 Environment: Maven 3.8.4, Java OpenJDK 11 & 17 & 19, Ubuntu Linux 22.04.01 LTS Reporter: Jan Hendriks Attachments: pom.xml
Compilation of projects using spring-kafka with Spring-Boot 2.7.7 fails if maven-enforcer-plugin is enabled with dependency conversion, as there are multiple mismatching dependency versions being dragged in, see below: Compilation failures are as follows (potentially incomplete): {code:java} mvn clean install [...] [INFO] — maven-enforcer-plugin:3.0.0-M3:enforce (enforce) @ SpringKafkaDependencyIssue — [WARNING] Dependency convergence error for org.scala-lang:scala-library:2.13.6 paths to dependency are: +-org.example:SpringKafkaDependencyIssue:1.0-SNAPSHOT +-org.springframework.kafka:spring-kafka-test:2.8.11 +-org.apache.kafka:kafka_2.13:3.1.2 +-org.scala-lang:scala-library:2.13.6 and +-org.example:SpringKafkaDependencyIssue:1.0-SNAPSHOT +-org.springframework.kafka:spring-kafka-test:2.8.11 +-org.apache.kafka:kafka_2.13:3.1.2 +-com.fasterxml.jackson.module:jackson-module-scala_2.13:2.13.4 +-org.scala-lang:scala-library:2.13.6 and +-org.example:SpringKafkaDependencyIssue:1.0-SNAPSHOT +-org.springframework.kafka:spring-kafka-test:2.8.11 +-org.apache.kafka:kafka_2.13:3.1.2 +-org.scala-lang.modules:scala-collection-compat_2.13:2.4.4 +-org.scala-lang:scala-library:2.13.5 and +-org.example:SpringKafkaDependencyIssue:1.0-SNAPSHOT +-org.springframework.kafka:spring-kafka-test:2.8.11 +-org.apache.kafka:kafka_2.13:3.1.2 +-org.scala-lang.modules:scala-java8-compat_2.13:1.0.0 +-org.scala-lang:scala-library:2.13.5 and +-org.example:SpringKafkaDependencyIssue:1.0-SNAPSHOT +-org.springframework.kafka:spring-kafka-test:2.8.11 +-org.apache.kafka:kafka_2.13:3.1.2 +-org.scala-lang:scala-reflect:2.13.6 +-org.scala-lang:scala-library:2.13.6 and +-org.example:SpringKafkaDependencyIssue:1.0-SNAPSHOT +-org.springframework.kafka:spring-kafka-test:2.8.11 +-org.apache.kafka:kafka_2.13:3.1.2 +-com.typesafe.scala-logging:scala-logging_2.13:3.9.3 +-org.scala-lang:scala-library:2.13.4 and +-org.example:SpringKafkaDependencyIssue:1.0-SNAPSHOT +-org.springframework.kafka:spring-kafka-test:2.8.11 +-org.apache.kafka:kafka_2.13:3.1.2 +-org.scala-lang:scala-library:2.13.6 [WARNING] Dependency convergence error for org.scala-lang:scala-reflect:2.13.6 paths to dependency are: +-org.example:SpringKafkaDependencyIssue:1.0-SNAPSHOT +-org.springframework.kafka:spring-kafka-test:2.8.11 +-org.apache.kafka:kafka_2.13:3.1.2 +-org.scala-lang:scala-reflect:2.13.6 and +-org.example:SpringKafkaDependencyIssue:1.0-SNAPSHOT +-org.springframework.kafka:spring-kafka-test:2.8.11 +-org.apache.kafka:kafka_2.13:3.1.2 +-com.typesafe.scala-logging:scala-logging_2.13:3.9.3 +-org.scala-lang:scala-reflect:2.13.4 and +-org.example:SpringKafkaDependencyIssue:1.0-SNAPSHOT +-org.springframework.kafka:spring-kafka-test:2.8.11 +-org.apache.kafka:kafka_2.13:3.1.2 +-org.scala-lang:scala-reflect:2.13.6 [WARNING] Rule 0: org.apache.maven.plugins.enforcer.DependencyConvergence failed with message: Failed while enforcing releasability. See above detailed error message. [INFO] ------------------------------------------------------------------------ [INFO] BUILD FAILURE [INFO] ------------------------------------------------------------------------ [INFO] Total time: 1.170 s [INFO] Finished at: 2023-01-30T13:21:27+01:00 [INFO] ------------------------------------------------------------------------ [ERROR] Failed to execute goal org.apache.maven.plugins:maven-enforcer-plugin:3.0.0-M3:enforce (enforce) on project SpringKafkaDependencyIssue: Some Enforcer rules have failed. Look above for specific messages explaining why the rule failed. -> [Help 1] [...] {code} and, excerpt from another project: {code:java} [...] Dependency convergence error for org.apache.kafka:kafka-metadata:3.1.2 paths to dependency are: +-org.example:SpringKafkaDependencyIssue:4.39.3-SNAPSHOT +-org.springframework.kafka:spring-kafka-test:2.8.11 +-org.apache.kafka:kafka-metadata:3.1.2 and +-org.example:SpringKafkaDependencyIssue:4.39.3-SNAPSHOT +-org.springframework.kafka:spring-kafka-test:2.8.11 +-org.apache.kafka:kafka-metadata:3.1.2 +-org.apache.kafka:kafka-metadata:2.8.2 and +-org.example:SpringKafkaDependencyIssue:4.39.3-SNAPSHOT +-org.springframework.kafka:spring-kafka-test:2.8.11 +-org.apache.kafka:kafka_2.13:3.1.2 +-org.apache.kafka:kafka-metadata:3.1.2 and +-org.example:SpringKafkaDependencyIssue:4.39.3-SNAPSHOT +-org.springframework.kafka:spring-kafka-test:2.8.11 +-org.apache.kafka:kafka_2.13:3.1.2 +-org.apache.kafka:kafka-metadata:3.1.2 [...] {code} Reproducer maven pom.xml can be found in attachment or at [https://gist.github.com/DaHoC/67daf9a7cb90e8626dbe6a144e93fa16]. To reproduce, copy this linked pom.xml file to a local folder and run "mvn clean install" from that folder. Tested with maven 3.8.4 and Java OpenJDK 11, 17, 19 on Ubuntu Linux 22.04.01 LTS. Expectation is that only one version of respective specific dependencies is referenced by spring-kafka projects so that compilation of projects using spring-kafka with maven-enforcer-plugin and enabled dependency conversion succeeds. (Note: First posted this issue at Spring-Boot at [https://github.com/spring-projects/spring-kafka/issues/2561] which directed me to this board) -- This message was sent by Atlassian Jira (v8.20.10#820010)