Guillaume Boué created MSHARED-602:
--------------------------------------

             Summary: NoSuchMethodException using DependencyCollector with 
Maven 3.0
                 Key: MSHARED-602
                 URL: https://issues.apache.org/jira/browse/MSHARED-602
             Project: Maven Shared Components
          Issue Type: Bug
          Components: maven-artifact-transfer
    Affects Versions: maven-artifact-transfer-0.9.0
            Reporter: Guillaume Boué
            Assignee: Guillaume Boué
             Fix For: maven-artifact-transfer-1.0.0


The component {{Maven30DependencyCollector}}, which is used internally by 
{{DependencyCollector}} when running with Maven 3.0.x, raises a 
{{NoSuchMethodException}} when called. The stacktrace is:

{noformat}
Caused by: 
org.apache.maven.shared.dependencies.collect.DependencyCollectorException: 
org.apache.maven.RepositoryUtils.toDependency(org.sonatype.aether.graph.Dependency,
 org.sonatype.aether.artifact.ArtifactTypeRegistry)
        at 
org.apache.maven.shared.dependencies.collect.internal.Invoker.invoke(Invoker.java:133)
        at 
org.apache.maven.shared.dependencies.collect.internal.Maven30DependencyCollector.toDependency(Maven30DependencyCollector.java:166)
        at 
org.apache.maven.shared.dependencies.collect.internal.Maven30DependencyCollector.collectDependencies(Maven30DependencyCollector.java:116)
        at 
org.apache.maven.shared.dependencies.collect.internal.DefaultDependencyCollector.collectDependencies(DefaultDependencyCollector.java:93)
        at 
org.apache.maven.plugins.dependency.resolvers.ListRepositoriesMojo.doExecute(ListRepositoriesMojo.java:62)
        ... 22 more
Caused by: java.lang.NoSuchMethodException: 
org.apache.maven.RepositoryUtils.toDependency(org.sonatype.aether.graph.Dependency,
 org.sonatype.aether.artifact.ArtifactTypeRegistry)
        at java.lang.Class.getMethod(Class.java:1786)
        at 
org.apache.maven.shared.dependencies.collect.internal.Invoker.invoke(Invoker.java:121)
        ... 26 more
{noformat}

In the method {{toDependency}}, it tries to reflectively calls the method 
{{RepositoryUtils#toDependency}}. In Maven 3.0.x, this method takes as 
parameter objects of type {{org.apache.maven.model.Dependency}} and 
{{org.sonatype.aether.artifact.ArtifactTypeRegistry}}. However, the code tries 
to look for a method taking as first parameter an object of type 
{{org.sonatype.aether.graph.Dependency}} instead. Since this method doesn't 
exist, the exception is thrown.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to