When using spring-boot-dependencies 2.5.4 as my parent pom, and adding spring-boot-starter-web with excluded, and spring-boot-starter-undertow as a dependency, I get the following errors when running mvn install
:
[INFO] --- maven-enforcer-plugin:3.0.0:enforce (enforce-dependency-convergence) @ project ---
[WARNING] The POM for org.apache.logging.log4j:log4j-api-java9:zip:2.14.1 is missing, no dependency information available
[WARNING]
Dependency convergence error for org.jboss.logging:jboss-logging-processor:jar:2.2.1.Final:runtime paths to dependency are:
+-testing:project:pom:1.0.0-SNAPSHOT
+-org.springframework.boot:spring-boot-starter-undertow:jar:2.5.4:compile
+-io.undertow:undertow-core:jar:2.2.10.Final:compile
+-org.jboss.logging:jboss-logging-processor:jar:2.2.1.Final:runtime
and
+-testing:project:pom:1.0.0-SNAPSHOT
+-org.springframework.boot:spring-boot-starter-undertow:jar:2.5.4:compile
+-io.undertow:undertow-core:jar:2.2.10.Final:compile
+-org.jboss.xnio:xnio-api:jar:3.8.4.Final:compile
+-org.jboss.logging:jboss-logging-processor:jar:2.2.1.Final:provided
and
+-testing:project:pom:1.0.0-SNAPSHOT
+-org.springframework.boot:spring-boot-starter-undertow:jar:2.5.4:compile
+-io.undertow:undertow-core:jar:2.2.10.Final:compile
+-org.jboss.xnio:xnio-api:jar:3.8.4.Final:compile
+-org.wildfly.common:wildfly-common:jar:1.5.2.Final:compile
+-org.jboss.logging:jboss-logging-processor:jar:2.2.0.Final:provided
and
+-testing:project:pom:1.0.0-SNAPSHOT
+-org.springframework.boot:spring-boot-starter-undertow:jar:2.5.4:compile
+-io.undertow:undertow-core:jar:2.2.10.Final:compile
+-org.jboss.xnio:xnio-api:jar:3.8.4.Final:compile
+-org.wildfly.client:wildfly-client-config:jar:1.0.1.Final:compile
+-org.jboss.logging:jboss-logging-processor:jar:2.1.0.Final:provided
and
+-testing:project:pom:1.0.0-SNAPSHOT
+-org.springframework.boot:spring-boot-starter-undertow:jar:2.5.4:compile
+-io.undertow:undertow-core:jar:2.2.10.Final:compile
+-org.jboss.xnio:xnio-nio:jar:3.8.4.Final:runtime
+-org.jboss.logging:jboss-logging-processor:jar:2.2.1.Final:runtime
and
+-testing:project:pom:1.0.0-SNAPSHOT
+-org.springframework.boot:spring-boot-starter-undertow:jar:2.5.4:compile
+-io.undertow:undertow-core:jar:2.2.10.Final:compile
+-org.jboss.threads:jboss-threads:jar:3.1.0.Final:compile
+-org.jboss.logging:jboss-logging-processor:jar:2.2.0.Final:provided
and
+-testing:project:pom:1.0.0-SNAPSHOT
+-org.springframework.boot:spring-boot-starter-undertow:jar:2.5.4:compile
+-io.undertow:undertow-servlet:jar:2.2.10.Final:compile
+-org.jboss.logging:jboss-logging-processor:jar:2.2.1.Final:provided
and
+-testing:project:pom:1.0.0-SNAPSHOT
+-org.springframework.boot:spring-boot-starter-undertow:jar:2.5.4:compile
+-io.undertow:undertow-websockets-jsr:jar:2.2.10.Final:compile
+-org.jboss.logging:jboss-logging-processor:jar:2.2.1.Final:provided
[WARNING]
Dependency convergence error for org.wildfly.common:wildfly-common:jar:1.5.2.Final:compile paths to dependency are:
+-testing:project:pom:1.0.0-SNAPSHOT
+-org.springframework.boot:spring-boot-starter-undertow:jar:2.5.4:compile
+-io.undertow:undertow-core:jar:2.2.10.Final:compile
+-org.jboss.xnio:xnio-api:jar:3.8.4.Final:compile
+-org.wildfly.common:wildfly-common:jar:1.5.2.Final:compile
and
+-testing:project:pom:1.0.0-SNAPSHOT
+-org.springframework.boot:spring-boot-starter-undertow:jar:2.5.4:compile
+-io.undertow:undertow-core:jar:2.2.10.Final:compile
+-org.jboss.xnio:xnio-api:jar:3.8.4.Final:compile
+-org.wildfly.client:wildfly-client-config:jar:1.0.1.Final:compile
+-org.wildfly.common:wildfly-common:jar:1.2.0.Final:compile
[WARNING]
Dependency convergence error for org.jboss.logging:jboss-logging-annotations:jar:2.2.1.Final:runtime paths to dependency are:
+-testing:project:pom:1.0.0-SNAPSHOT
+-org.springframework.boot:spring-boot-starter-undertow:jar:2.5.4:compile
+-io.undertow:undertow-core:jar:2.2.10.Final:compile
+-org.jboss.logging:jboss-logging-processor:jar:2.2.1.Final:runtime
+-org.jboss.logging:jboss-logging-annotations:jar:2.2.1.Final:runtime
and
+-testing:project:pom:1.0.0-SNAPSHOT
+-org.springframework.boot:spring-boot-starter-undertow:jar:2.5.4:compile
+-io.undertow:undertow-core:jar:2.2.10.Final:compile
+-org.jboss.xnio:xnio-api:jar:3.8.4.Final:compile
+-org.wildfly.common:wildfly-common:jar:1.5.2.Final:compile
+-org.jboss.logging:jboss-logging-annotations:jar:2.2.0.Final:provided
and
+-testing:project:pom:1.0.0-SNAPSHOT
+-org.springframework.boot:spring-boot-starter-undertow:jar:2.5.4:compile
+-io.undertow:undertow-core:jar:2.2.10.Final:compile
+-org.jboss.xnio:xnio-api:jar:3.8.4.Final:compile
+-org.jboss.logging:jboss-logging-annotations:jar:2.2.1.Final:provided
and
+-testing:project:pom:1.0.0-SNAPSHOT
+-org.springframework.boot:spring-boot-starter-undertow:jar:2.5.4:compile
+-io.undertow:undertow-core:jar:2.2.10.Final:compile
+-org.jboss.xnio:xnio-nio:jar:3.8.4.Final:runtime
+-org.jboss.logging:jboss-logging-annotations:jar:2.2.1.Final:runtime
and
+-testing:project:pom:1.0.0-SNAPSHOT
+-org.springframework.boot:spring-boot-starter-undertow:jar:2.5.4:compile
+-io.undertow:undertow-core:jar:2.2.10.Final:compile
+-org.jboss.threads:jboss-threads:jar:3.1.0.Final:compile
+-org.jboss.logging:jboss-logging-annotations:jar:2.2.0.Final:provided
I expected the dependency convergence to succeed without errors or warnings. Sample project is attached.
Comment From: wilkinsona
Thanks for the report but I don't think that this is something we should try to fix in Boot. All those problems are being caused by Undertow, specifically its undertow-core
and undertow-servlet
modules rather than a combination of dependencies from two or more separate projects. We could work around the problem by adding dependency management in Boot for jboss-logging-annotations
and wildfly-common
but that would only fix it for users of Spring Boot's dependency management. It would also then affect everyone using the dependencies, irrespective of whether they're using Undertow and have the same problem as you.
I think it would be better to fix it at source with some changes to Undertow so that it pulls in consistent versions of its transitive dependencies. This would fix the problem for everyone while also minimising its scope to those that are affected. In the meantime, you can avoid the problem in your own build with some dependency management of your own. Can you please raise this with the Undertow team?
Comment From: jbonzowh
okay, thank you.
Comment From: jbonzowh
For posterity https://issues.redhat.com/browse/UNDERTOW-1976 :)