Re: Migrating code from m-dependency-tree to m-artifact-transfer (was: Releasing Maven enforcer plugin)
Can you add an exclusion of maven-dependency-tree to the extra-enforcer-rules dependency? thanks, Robert On Tue, 22 Jan 2019 18:40:36 +0100, Gabriel Belingueres wrote: Moving the collecting code from m-dependency-tree to m-artifact-transfer found a problem: I added m-dependency-tree 3.0.1 as a dependency of m-artifact-transfer because it has a lot of funcionality useful when using Aether's collect (DependencyNode, DefaultDependencyNode, visitors and filters). When executing the requireUpperBoundDeps rule on the m-artifact-transfer lib, it throws an exception related some classloading issue: org.apache.maven.lifecycle.LifecycleExecutionException: Failed to execute goal org.apache.maven.plugins:maven-enforcer-plugin:3.0.0-SNAPSHOT:enforce (enforce-requireUpperBoundDeps) on project maven-artifact-transfer: Execution enforce-requireUpperBoundDeps of goal org.apache.maven.plugins:maven-enforcer-plugin:3.0.0-SNAPSHOT:enforce failed: An API incompatibility was encountered while executing org.apache.maven.plugins:maven-enforcer-plugin:3.0.0-SNAPSHOT:enforce: java.lang.NoSuchMethodError: org.apache.maven.shared.dependency.graph.internal.DefaultDependencyNode.(Lorg/apache/maven/shared/dependency/graph/DependencyNode;Lorg/apache/maven/artifact/Artifact;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/Boolean;)V - realm = plugin>org.apache.maven.plugins:maven-enforcer-plugin:3.0.0-SNAPSHOT strategy = org.codehaus.plexus.classworlds.strategy.SelfFirstStrategy urls[0] = file:/win/productos/repo/org/apache/maven/plugins/maven-enforcer-plugin/3.0.0-SNAPSHOT/maven-enforcer-plugin-3.0.0-SNAPSHOT.jar urls[1] = file:/win/productos/repo/org/codehaus/mojo/extra-enforcer-rules/1.0-beta-9/extra-enforcer-rules-1.0-beta-9.jar urls[2] = file:/win/productos/repo/org/apache/maven/shared/maven-dependency-tree/2.1/maven-dependency-tree-2.1.jar urls[3] = file:/win/productos/repo/backport-util-concurrent/backport-util-concurrent/3.1/backport-util-concurrent-3.1.jar urls[4] = file:/win/productos/repo/org/eclipse/aether/aether-util/0.9.0.M2/aether-util-0.9.0.M2.jar urls[5] = file:/win/productos/repo/junit/junit/4.11/junit-4.11.jar urls[6] = file:/win/productos/repo/org/hamcrest/hamcrest-core/1.3/hamcrest-core-1.3.jar urls[7] = file:/win/productos/repo/commons-codec/commons-codec/1.6/commons-codec-1.6.jar urls[8] = file:/win/productos/repo/org/apache/maven/shared/maven-common-artifact-filters/3.0.1/maven-common-artifact-filters-3.0.1.jar urls[9] = file:/win/productos/repo/org/apache/maven/shared/maven-shared-utils/3.1.0/maven-shared-utils-3.1.0.jar urls[10] = file:/win/productos/repo/commons-io/commons-io/2.5/commons-io-2.5.jar urls[11] = file:/win/productos/repo/com/ibm/icu/icu4j/56.1/icu4j-56.1.jar urls[12] = file:/win/productos/repo/org/sonatype/sisu/sisu-inject-bean/1.4.2/sisu-inject-bean-1.4.2.jar urls[13] = file:/win/productos/repo/org/sonatype/sisu/sisu-guice/2.1.7/sisu-guice-2.1.7-noaop.jar urls[14] = file:/win/productos/repo/org/sonatype/aether/aether-util/1.7/aether-util-1.7.jar urls[15] = file:/win/productos/repo/org/codehaus/plexus/plexus-interpolation/1.14/plexus-interpolation-1.14.jar urls[16] = file:/win/productos/repo/org/codehaus/plexus/plexus-component-annotations/1.7.1/plexus-component-annotations-1.7.1.jar urls[17] = file:/win/productos/repo/org/sonatype/plexus/plexus-sec-dispatcher/1.3/plexus-sec-dispatcher-1.3.jar urls[18] = file:/win/productos/repo/org/sonatype/plexus/plexus-cipher/1.4/plexus-cipher-1.4.jar urls[19] = file:/win/productos/repo/org/codehaus/plexus/plexus-utils/3.1.0/plexus-utils-3.1.0.jar urls[20] = file:/win/productos/repo/org/apache/maven/enforcer/enforcer-api/3.0.0-SNAPSHOT/enforcer-api-3.0.0-SNAPSHOT.jar urls[21] = file:/win/productos/repo/org/apache/maven/enforcer/enforcer-rules/3.0.0-SNAPSHOT/enforcer-rules-3.0.0-SNAPSHOT.jar urls[22] = file:/win/productos/repo/org/apache/commons/commons-lang3/3.5/commons-lang3-3.5.jar urls[23] = file:/win/productos/repo/org/beanshell/bsh/2.0b4/bsh-2.0b4.jar urls[24] = file:/win/productos/repo/org/apache/maven/shared/maven-artifact-transfer/0.11.0-SNAPSHOT/maven-artifact-transfer-0.11.0-SNAPSHOT.jar Number of foreign imports: 1 import: Entry[import from realm ClassRealm[maven.api, parent: null]] - at org.apache.maven.lifecycle.internal.MojoExecutor.execute (MojoExecutor.java:215) at org.apache.maven.lifecycle.internal.MojoExecutor.execute (MojoExecutor.java:156) at org.apache.maven.lifecycle.internal.MojoExecutor.execute (MojoExecutor.java:148) at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject (LifecycleModuleBuilder.java:117) at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject (LifecycleModuleBuilder.java:81) at org.apache.maven.lifecycle.internal.builder.singlethreaded.SingleThreadedBuilder.build (SingleThreadedBuilder.java:56) at org.apache.maven.lifec
Migrating code from m-dependency-tree to m-artifact-transfer (was: Releasing Maven enforcer plugin)
Moving the collecting code from m-dependency-tree to m-artifact-transfer found a problem: I added m-dependency-tree 3.0.1 as a dependency of m-artifact-transfer because it has a lot of funcionality useful when using Aether's collect (DependencyNode, DefaultDependencyNode, visitors and filters). When executing the requireUpperBoundDeps rule on the m-artifact-transfer lib, it throws an exception related some classloading issue: org.apache.maven.lifecycle.LifecycleExecutionException: Failed to execute goal org.apache.maven.plugins:maven-enforcer-plugin:3.0.0-SNAPSHOT:enforce (enforce-requireUpperBoundDeps) on project maven-artifact-transfer: Execution enforce-requireUpperBoundDeps of goal org.apache.maven.plugins:maven-enforcer-plugin:3.0.0-SNAPSHOT:enforce failed: An API incompatibility was encountered while executing org.apache.maven.plugins:maven-enforcer-plugin:3.0.0-SNAPSHOT:enforce: java.lang.NoSuchMethodError: org.apache.maven.shared.dependency.graph.internal.DefaultDependencyNode.(Lorg/apache/maven/shared/dependency/graph/DependencyNode;Lorg/apache/maven/artifact/Artifact;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/Boolean;)V - realm = plugin>org.apache.maven.plugins:maven-enforcer-plugin:3.0.0-SNAPSHOT strategy = org.codehaus.plexus.classworlds.strategy.SelfFirstStrategy urls[0] = file:/win/productos/repo/org/apache/maven/plugins/maven-enforcer-plugin/3.0.0-SNAPSHOT/maven-enforcer-plugin-3.0.0-SNAPSHOT.jar urls[1] = file:/win/productos/repo/org/codehaus/mojo/extra-enforcer-rules/1.0-beta-9/extra-enforcer-rules-1.0-beta-9.jar urls[2] = file:/win/productos/repo/org/apache/maven/shared/maven-dependency-tree/2.1/maven-dependency-tree-2.1.jar urls[3] = file:/win/productos/repo/backport-util-concurrent/backport-util-concurrent/3.1/backport-util-concurrent-3.1.jar urls[4] = file:/win/productos/repo/org/eclipse/aether/aether-util/0.9.0.M2/aether-util-0.9.0.M2.jar urls[5] = file:/win/productos/repo/junit/junit/4.11/junit-4.11.jar urls[6] = file:/win/productos/repo/org/hamcrest/hamcrest-core/1.3/hamcrest-core-1.3.jar urls[7] = file:/win/productos/repo/commons-codec/commons-codec/1.6/commons-codec-1.6.jar urls[8] = file:/win/productos/repo/org/apache/maven/shared/maven-common-artifact-filters/3.0.1/maven-common-artifact-filters-3.0.1.jar urls[9] = file:/win/productos/repo/org/apache/maven/shared/maven-shared-utils/3.1.0/maven-shared-utils-3.1.0.jar urls[10] = file:/win/productos/repo/commons-io/commons-io/2.5/commons-io-2.5.jar urls[11] = file:/win/productos/repo/com/ibm/icu/icu4j/56.1/icu4j-56.1.jar urls[12] = file:/win/productos/repo/org/sonatype/sisu/sisu-inject-bean/1.4.2/sisu-inject-bean-1.4.2.jar urls[13] = file:/win/productos/repo/org/sonatype/sisu/sisu-guice/2.1.7/sisu-guice-2.1.7-noaop.jar urls[14] = file:/win/productos/repo/org/sonatype/aether/aether-util/1.7/aether-util-1.7.jar urls[15] = file:/win/productos/repo/org/codehaus/plexus/plexus-interpolation/1.14/plexus-interpolation-1.14.jar urls[16] = file:/win/productos/repo/org/codehaus/plexus/plexus-component-annotations/1.7.1/plexus-component-annotations-1.7.1.jar urls[17] = file:/win/productos/repo/org/sonatype/plexus/plexus-sec-dispatcher/1.3/plexus-sec-dispatcher-1.3.jar urls[18] = file:/win/productos/repo/org/sonatype/plexus/plexus-cipher/1.4/plexus-cipher-1.4.jar urls[19] = file:/win/productos/repo/org/codehaus/plexus/plexus-utils/3.1.0/plexus-utils-3.1.0.jar urls[20] = file:/win/productos/repo/org/apache/maven/enforcer/enforcer-api/3.0.0-SNAPSHOT/enforcer-api-3.0.0-SNAPSHOT.jar urls[21] = file:/win/productos/repo/org/apache/maven/enforcer/enforcer-rules/3.0.0-SNAPSHOT/enforcer-rules-3.0.0-SNAPSHOT.jar urls[22] = file:/win/productos/repo/org/apache/commons/commons-lang3/3.5/commons-lang3-3.5.jar urls[23] = file:/win/productos/repo/org/beanshell/bsh/2.0b4/bsh-2.0b4.jar urls[24] = file:/win/productos/repo/org/apache/maven/shared/maven-artifact-transfer/0.11.0-SNAPSHOT/maven-artifact-transfer-0.11.0-SNAPSHOT.jar Number of foreign imports: 1 import: Entry[import from realm ClassRealm[maven.api, parent: null]] - at org.apache.maven.lifecycle.internal.MojoExecutor.execute (MojoExecutor.java:215) at org.apache.maven.lifecycle.internal.MojoExecutor.execute (MojoExecutor.java:156) at org.apache.maven.lifecycle.internal.MojoExecutor.execute (MojoExecutor.java:148) at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject (LifecycleModuleBuilder.java:117) at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject (LifecycleModuleBuilder.java:81) at org.apache.maven.lifecycle.internal.builder.singlethreaded.SingleThreadedBuilder.build (SingleThreadedBuilder.java:56) at org.apache.maven.lifecycle.internal.LifecycleStarter.execute (LifecycleStarter.java:128) at org.apache.maven.DefaultMaven.doExecute (DefaultMaven.java:305) at org.apache.maven.DefaultMaven.doExecu