[ https://issues.apache.org/jira/browse/MENFORCER-402?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17554310#comment-17554310 ]
Daniel Norberg commented on MENFORCER-402: ------------------------------------------ I believe the root cause here might be https://issues.apache.org/jira/browse/MSHARED-1016 and that [https://github.com/apache/maven-dependency-tree/pull/9] might also be a better fix for https://issues.apache.org/jira/browse/MENFORCER-394 > RequireUpperBoundDeps now follow scope provided transitive dependencies > ----------------------------------------------------------------------- > > Key: MENFORCER-402 > URL: https://issues.apache.org/jira/browse/MENFORCER-402 > Project: Maven Enforcer Plugin > Issue Type: Bug > Components: Plugin > Affects Versions: 3.0.0 > Reporter: Thomas Mortagne > Assignee: Slawomir Jaranowski > Priority: Major > Fix For: 3.1.0 > > > I have a dependency on org.infinispan:infinispan-core:12.1.7.Final and > upgrading to the enforcer plugin 3.0.0 suddenly made my module fail because > infinispan-core have conflicting provided dependencies on > javax.annotation-api: > {noformat} > Require upper bound dependencies error for > javax.annotation:javax.annotation-api:1.3.1 [provided] paths to dependency > are: > +-org.xwiki.commons:xwiki-commons-cache-infinispan:13.9-SNAPSHOT > +-org.infinispan:infinispan-core:12.1.7.Final > +-javax.annotation:javax.annotation-api:1.3.1 [provided] > and > +-org.xwiki.commons:xwiki-commons-cache-infinispan:13.9-SNAPSHOT > +-org.infinispan:infinispan-core:12.1.7.Final > +-org.infinispan:infinispan-commons:12.1.7.Final > +-javax.annotation:javax.annotation-api:1.3.1 [provided] > and > +-org.xwiki.commons:xwiki-commons-cache-infinispan:13.9-SNAPSHOT > +-org.infinispan:infinispan-core:12.1.7.Final > +-org.infinispan:infinispan-component-processor:12.1.7.Final [provided] > +-javax.annotation:javax.annotation-api:1.3.1 [provided] > and > +-org.xwiki.commons:xwiki-commons-cache-infinispan:13.9-SNAPSHOT > +-org.infinispan:infinispan-core:12.1.7.Final > +-org.infinispan.protostream:protostream-types:4.4.1.Final > +-javax.annotation:javax.annotation-api:1.3.2 [provided] > and > +-org.xwiki.commons:xwiki-commons-cache-infinispan:13.9-SNAPSHOT > +-org.infinispan:infinispan-core:12.1.7.Final > +-org.infinispan.protostream:protostream-processor:4.4.1.Final [provided] > +-javax.annotation:javax.annotation-api:1.3.2 [provided] > and > +-org.xwiki.commons:xwiki-commons-cache-infinispan:13.9-SNAPSHOT > +-org.infinispan:infinispan-core:12.1.7.Final > +-org.infinispan:infinispan-commons:12.1.7.Final > +-org.infinispan:infinispan-commons-jdk11:12.1.7.Final [provided] > +-javax.annotation:javax.annotation-api:1.3.1 [provided] > {noformat} > It's not clear if this was done on purpose since I cannot find anything about > that in the release note, but I might have missed it. Problem is that > provided scope dependencies are not necessarily used at runtime (it's often > used as a way to avoid making transitive a dependency you only need at build > time) and adding an <exclusion> for a non-transitive dependency feels quite > weird. > At least if this is not a bug, it would be nice to make this behavior > configurable. -- This message was sent by Atlassian Jira (v8.20.7#820007)