[ https://jira.codehaus.org/browse/MNG-5591?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=341958#comment-341958 ]
Mikolaj Izdebski commented on MNG-5591: --------------------------------------- The dummy workspace reader I provided is supposed simulate an empty workspace, which doesn't contain any artifacts. I expect Maven behaviour to remain unchanged after adding empty workspace, but Maven 3.2.1 changes behaviour and that's what this bug report is about. (Behaviour changes no matter if workspace is empty or not, but empty workspace is the simplest reproducer. The actual workspace reader is avaiable at Github, but it shouldn't be needed to reproduce the problem. The code is at https://github.com/mizdebsk/xmvn/blob/master/xmvn-connector-aether/src/main/java/org/fedoraproject/xmvn/connector/aether/XMvnWorkspaceReader.java) I think the problem is in incorrect {{@Named}} annotation in {{ReactorReader}} class. In this case {{@Named}} with no argument is equivalent to {{@Named( "org.apache.maven.ReactorReader" )}}, however code in {{DefaultMaven}} is calling {{PlexusContainer.lookup()}} with no hint argument which is equivalent to hint {{default}}. Sisu uses implicit role hint {{default}} only for components which class names are prefixed with {{Default}}. Since {{ReactorReader}} is not, hole hint {{default}} needs to be explicitly added as argument to {{@Named}}. > Installing workspace reader triggers MNG-5503 > --------------------------------------------- > > Key: MNG-5591 > URL: https://jira.codehaus.org/browse/MNG-5591 > Project: Maven 2 & 3 > Issue Type: Bug > Components: Artifacts and Repositories > Affects Versions: 3.2.1 > Reporter: Mikolaj Izdebski > Attachments: > 0001-MNG-5591-Set-role-hint-for-ReactorReader-to-default.patch, > dummy-extension.tar.gz > > > It looks like Maven 3.2.1 introduced a regression. Installing > extension which provides workspace reader triggers MNG-5503. > Maven resolves artifacts from reactor, workspace, repositories (in > that order). In standard Maven distribution there is no workspace, > but Maven provides an extension point which allows extensions to > install workspace reader by providing a component with role > {{org.eclipse.aether.repository.WorkspaceReader}} and role hint {{ide}}. > Installing workspace reader extension in Maven 3.2.1 triggers a > regression - Maven fails to resolve artifacts produced by reactor > build (MNG-5503). Even though artifact is present in reactor Maven > queries workspace about it and if artifact is not found there it > continues with repositories. Expected behaviour is resolving artifact > from reactor. > Steps to reproduce this: > 1) download and extract {{apache-maven-3.2.1-bin.tar.gz}} > 2) download dummy-extension.tar.gz and build it with {{mvn package}} > 3) download reproducer for MNG-5503 from: > https://bugzilla.redhat.com/attachment.cgi?id=784786 > 4) try to build reproducer project, it succeeds > 5) copy {{dummy-extension-1.0.0.jar}} to Maven {{lib/ext}} > 6) try to build reproducer project, it fails > When repeating the same steps for Maven 3.1.1 failure is not reproducible. -- This message was sent by Atlassian JIRA (v6.1.6#6162)