Yes, I can. Can you tell me where some similar tests live? On Fri, Dec 9, 2011 at 2:43 PM, Olivier Lamy <ol...@apache.org> wrote: > Hello, > > 2011/12/9 <bimargul...@apache.org>: >> Author: bimargulies >> Date: Fri Dec 9 18:30:26 2011 >> New Revision: 1212564 >> >> URL: http://svn.apache.org/viewvc?rev=1212564&view=rev >> Log: >> MNG-5214: Dependency resolution substitutes g:a:v:jar for >> j:a:v:something-else when something-else isn't in the reacto >> >> o When Aether asks the ReactorReader for a file for an artifact, remember to >> match type and classifier. And if all else >> fails, do not return target/classes if the desired artifact is not of type >> 'jar'. Arguably, if type or classifier >> are non-default, then we should never return those default paths at all. >> o Add 'dir' format to make it quicker to run a quick test. If everyone hates >> this I'll revert it. >> >> Modified: >> maven/maven-3/trunk/apache-maven/src/main/assembly/bin.xml >> >> maven/maven-3/trunk/maven-core/src/main/java/org/apache/maven/ReactorReader.java >> >> Modified: maven/maven-3/trunk/apache-maven/src/main/assembly/bin.xml >> URL: >> http://svn.apache.org/viewvc/maven/maven-3/trunk/apache-maven/src/main/assembly/bin.xml?rev=1212564&r1=1212563&r2=1212564&view=diff >> ============================================================================== >> --- maven/maven-3/trunk/apache-maven/src/main/assembly/bin.xml (original) >> +++ maven/maven-3/trunk/apache-maven/src/main/assembly/bin.xml Fri Dec 9 >> 18:30:26 2011 >> @@ -20,6 +20,7 @@ under the License. >> <assembly> >> <id>bin</id> >> <formats> >> + <format>dir</format> > > Why ? > > I wonder if you could add a core it test for this use case ? > The use case is the cxf build you pointed ? > >> <format>zip</format> >> <format>tar.gz</format> >> </formats> >> >> Modified: >> maven/maven-3/trunk/maven-core/src/main/java/org/apache/maven/ReactorReader.java >> URL: >> http://svn.apache.org/viewvc/maven/maven-3/trunk/maven-core/src/main/java/org/apache/maven/ReactorReader.java?rev=1212564&r1=1212563&r2=1212564&view=diff >> ============================================================================== >> --- >> maven/maven-3/trunk/maven-core/src/main/java/org/apache/maven/ReactorReader.java >> (original) >> +++ >> maven/maven-3/trunk/maven-core/src/main/java/org/apache/maven/ReactorReader.java >> Fri Dec 9 18:30:26 2011 >> @@ -85,9 +85,10 @@ class ReactorReader >> { >> return projectArtifact.getFile(); >> } >> - else if ( !hasBeenPackaged( project ) ) >> + else if ( !hasBeenPackaged( project ) ) >> { >> // fallback to loose class files only if artifacts haven't been >> packaged yet >> + // and only for plain old jars. Not war files, not ear files, >> not anything else. >> >> if ( isTestArtifact( artifact ) ) >> { >> @@ -98,7 +99,7 @@ class ReactorReader >> } >> else >> { >> - if ( project.hasLifecyclePhase( "compile" ) ) >> + if ( project.hasLifecyclePhase( "compile" ) && >> artifact.getProperty( "type", "").equals( "jar" ) ) /* also reject non-"" >> classifier? */ >> { >> return new File( project.getBuild().getOutputDirectory() >> ); >> } >> @@ -143,7 +144,9 @@ class ReactorReader >> { >> for ( org.apache.maven.artifact.Artifact attachedArtifact : >> attachedArtifacts ) >> { >> - if ( requestedRepositoryConflictId.equals( getConflictId( >> attachedArtifact ) ) ) >> + if ( requestedArtifact.getProperty ( "type", "" ).equals( >> attachedArtifact.getType() ) >> + && classifierComparison ( >> requestedArtifact.getClassifier(), attachedArtifact.getClassifier() ) >> + && requestedRepositoryConflictId.equals( >> getConflictId( attachedArtifact ) ) ) >> { >> return attachedArtifact; >> } >> @@ -152,6 +155,12 @@ class ReactorReader >> >> return null; >> } >> + >> + private boolean classifierComparison ( String c1, String c2 ) >> + { >> + return c1 == null && c2 == null >> + || ((c1 != null) && c1.equals(c2)); >> + } >> >> /** >> * Gets the repository conflict id of the specified artifact. Unlike the >> dependency conflict id, the repository >> >> > > > > -- > Olivier Lamy > Talend: http://coders.talend.com > http://twitter.com/olamy | http://linkedin.com/in/olamy > > --------------------------------------------------------------------- > To unsubscribe, e-mail: dev-unsubscr...@maven.apache.org > For additional commands, e-mail: dev-h...@maven.apache.org >
--------------------------------------------------------------------- To unsubscribe, e-mail: dev-unsubscr...@maven.apache.org For additional commands, e-mail: dev-h...@maven.apache.org