Search code examples
mavenintellij-ideamaven-2maven-3nexus

Configuring Multiple Maven Repositories


I have a SpringBoot project that uses maven and IntelliJ IDEA Ultimate Edition (a build automation tool used primarily for Java projects) I have this settings.xml for maven but when I do a mvn -U clean install, only goes the the first repository to find the files

<?xml version="1.0" encoding="UTF-8"?>


<settings xmlns="http://maven.apache.org/SETTINGS/1.0.0"
          xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
          xsi:schemaLocation="http://maven.apache.org/SETTINGS/1.0.0 http://maven.apache.org/xsd/settings-1.0.0.xsd">

  <localRepository>C:/Users/sandro/.m2</localRepository>


  <pluginGroups>
  </pluginGroups>
  <proxies>
  </proxies>
  <servers>
  </servers>
  <mirrors>
    <mirror>
      <id>TeamNexus1</id>
      <mirrorOf>*</mirrorOf>
      <name>TeamNexus1</name>          
      <url>http://benficiones.com:8081/nexus/content/groups/public/</url>          
    </mirror>
    <mirror>
      <id>TeamNexus2</id>
      <mirrorOf>*</mirrorOf>
      <name>TeamNexus2</name>    
      <url>http://benficiones2.com:8081/nexus/content/groups/public/</url>
    </mirror>
  </mirrors>
  <profiles>
  <profile>
     <id>p1</id>
     <repositories>     
        <repository>
              <id>TeamNexus1</id>
            <name>TeamNexus1</name>      
            <url>http://benficiones.com:8081/nexus/content/groups/public/</url>      
            <releases><enabled>true</enabled><updatePolicy>always</updatePolicy></releases>
            <snapshots><enabled>true</enabled><updatePolicy>always</updatePolicy></snapshots>
        </repository>
        <repository>
            <id>TeamNexus2</id>
            <name>TeamNexus2</name>   
                   <url>http://benficiones2.com:8081/nexus/content/groups/public/</url>
             <releases><enabled>true</enabled><updatePolicy>always</updatePolicy></releases>
             <snapshots><enabled>true</enabled><updatePolicy>always</updatePolicy></snapshots>
        </repository>
  </repositories>
</profile>
  </profiles>
  <activeProfiles>
   <activeProfile>p1</activeProfile>
 </activeProfiles>
</settings>

Solution

  • You defined TeamNexus1 als <mirrorOf> everything. This means that any requests, to whatever repository they go, are redirected to TeamNexus1.

    This is probably not what you want.

    If you want to use the two repositories in addition to MavenCentral (which is implicitly configured), you can just remove the whole <mirrors> section.