You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@maven.apache.org by hb...@apache.org on 2010/07/19 21:55:20 UTC
svn commit: r965608 - in /maven/ant-tasks/trunk: build-tests.xml
src/main/java/org/apache/maven/artifact/ant/AbstractArtifactWithRepositoryTask.java
Author: hboutemy
Date: Mon Jul 19 19:55:20 2010
New Revision: 965608
URL: http://svn.apache.org/viewvc?rev=965608&view=rev
Log:
[MANTTASKS-195] fixed remote repository overriding
Modified:
maven/ant-tasks/trunk/build-tests.xml
maven/ant-tasks/trunk/src/main/java/org/apache/maven/artifact/ant/AbstractArtifactWithRepositoryTask.java
Modified: maven/ant-tasks/trunk/build-tests.xml
URL: http://svn.apache.org/viewvc/maven/ant-tasks/trunk/build-tests.xml?rev=965608&r1=965607&r2=965608&view=diff
==============================================================================
--- maven/ant-tasks/trunk/build-tests.xml (original)
+++ maven/ant-tasks/trunk/build-tests.xml Mon Jul 19 19:55:20 2010
@@ -326,6 +326,16 @@
</artifact:dependencies>
</target>
+ <target name="test-deps-repo-override" depends="initTaskDefs">
+ <echo>Expected failure: central has been overrided.</echo>
+ <delete dir="target/tmp"/>
+ <artifact:dependencies settingsFile="${basedir}/src/test/settings-empty.xml">
+ <localRepository path="target/tmp"/>
+ <remoteRepository id="central" url="file://${user.dir}/src/test/repo"/>
+ <dependency groupId="commons-logging" artifactId="commons-logging" version="1.1.1"/>
+ </artifact:dependencies>
+ </target>
+
<target name="test-deps-order" depends="initTaskDefs">
<artifact:dependencies pathId="order.path">
<dependency groupId="junit" artifactId="junit" version="3.8.1"/>
Modified: maven/ant-tasks/trunk/src/main/java/org/apache/maven/artifact/ant/AbstractArtifactWithRepositoryTask.java
URL: http://svn.apache.org/viewvc/maven/ant-tasks/trunk/src/main/java/org/apache/maven/artifact/ant/AbstractArtifactWithRepositoryTask.java?rev=965608&r1=965607&r2=965608&view=diff
==============================================================================
--- maven/ant-tasks/trunk/src/main/java/org/apache/maven/artifact/ant/AbstractArtifactWithRepositoryTask.java (original)
+++ maven/ant-tasks/trunk/src/main/java/org/apache/maven/artifact/ant/AbstractArtifactWithRepositoryTask.java Mon Jul 19 19:55:20 2010
@@ -22,7 +22,9 @@ package org.apache.maven.artifact.ant;
import java.math.BigInteger;
import java.security.MessageDigest;
import java.util.ArrayList;
+import java.util.HashSet;
import java.util.List;
+import java.util.Set;
import org.apache.maven.artifact.repository.ArtifactRepository;
import org.apache.maven.model.Repository;
@@ -94,8 +96,14 @@ public abstract class AbstractArtifactWi
log( "Using remote repositories:", Project.MSG_VERBOSE );
List<ArtifactRepository> list = new ArrayList<ArtifactRepository>();
+ Set<String> ids = new HashSet<String>();
for ( RemoteRepository remoteRepository : remoteRepositories )
{
+ if ( !ids.add( remoteRepository.getId() ) )
+ {
+ // repository id already added to the list: ignore it, since it has been overridden
+ continue;
+ }
updateRepositoryWithSettings( remoteRepository );
StringBuffer msg = new StringBuffer();