How can I setup Apache Archiva as cache fo all my maven projects?

872 views Asked by At

I have setup Apache Archiva with internal repo at

http://localhost:8080/archiva/repository/internal/

But when I trying to run "mvn compile",requests for artifacts are forwarded to Apache Archiva but I see following error:

Non-resolvable parent POM: Could not find artifact org.springframework.cloud:spring-cloud-build:pom:1.2.0.BUILD-SNAPSHOT and 'parent.relativePath' points at no local POM @ line 13, column 10 -> [Help 2]

Do I need to update any specific settings so Archiva can fetch required artifact from remote repository?

Content from ~/.m2/settings.xml

<?xml version="1.0"?>
<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  https://maven.apache.org/xsd/settings-1.0.0.xsd">
  <localRepository>${user.home}/.m2/repository</localRepository>
  <interactiveMode/>
  <usePluginRegistry/>
  <offline/>
  <pluginGroups/>
  <servers/>
  <mirrors>
    <mirror>
      <id>internal</id>
      <name>Internal repo + cache </name>
      <url>http://localhost:8080/archiva/repository/internal/</url>
      <mirrorOf>*</mirrorOf>
    </mirror>
  </mirrors>
  <proxies/>
  <profiles>
      <profile>
        <activation>
            <activeByDefault>true</activeByDefault>
        </activation>
        <repositories>
            <repository>
              <id>internal</id>
              <name>Archiva Managed Internal Repository</name>
              <url>http://localhost:8080/archiva/repository/internal/</url>
              <releases>
                <enabled>true</enabled>
              </releases>
              <snapshots>
                <enabled>false</enabled>
              </snapshots>
            </repository>
            <repository>
              <id>snapshots</id>
              <name>Archiva Managed Internal Repository</name>
              <url>http://localhost:8080/archiva/repository/snapshots/</url>
              <releases>
                <enabled>false</enabled>
              </releases>
              <snapshots>
                <enabled>true</enabled>
              </snapshots>
            </repository>
        </repositories>
    </profile>
  </profiles>
  <activeProfiles/>
</settings>
1

There are 1 answers

6
Selim Ok On

As long as I know archiva comes with the default configuration to search artifacts in maven central repo. As maven central does not contain SNAPSHOT versions of artifacts, you cannot fetch it from there.

Try to address a release version instead of SNAPSHOT.