Wir haben einen Nexus-Server, der die gemeinsame maven-public Repository-Gruppe hat, die jedes externe Proxy-Repository enthält (z.B. maven-central). Außerdem haben wir ein lokal gehostetes Repository. Nennen wir es MyProjectRepository. Es ist in einem Release-Repo und einem Snapshot-Repo aufgeteilt.Warum kann maven kein Artefakt in einem gehosteten Repository finden?
Also, momentan sieht es wie folgt aus:
- MyProjectRepository
- MyProjectRepository-Snapshots
- ArtifactOne
- Snapshot-5
- ...
- Snapshot- 1
- ArtifactTwo
- Snapshot-3
- ...
- Snapshot-1
- ArtifactOne
Okay, braucht ArtifactTwo ArtifactOne als Abhängigkeit. So habe ich dies in den Abhängigkeiten Abschnitt hinzugefügt:
<dependency>
<groupId>com.company</groupId>
<artifactId>artifactone</artifactId>
<version>0.0.5</version>
</dependency>
ich das Repository Abschnitt wie folgt konfiguriert haben:
<repository>
<id>myprojectrepositoryss</id>
<name>MyProjectRepository Snapshots</name>
<url>http://mylocalnexus.com/nexus/repository/MyProjectRepository-Snapshots/</url>
<releases>
<enabled>false</enabled>
</releases>
<snapshots>
<enabled>true</enabled>
</snapshots>
</repository>
Meine settings.xml Spiegel-Abschnitt sieht wie folgt aus:
<mirror>
<!--This sends everything else to /public -->
<id>nexus</id>
<mirrorOf>external:*, !myprojectrepositoryss</mirrorOf>
<url>http://mylocalnexus.com/nexus/repository/maven-public/</url>
</mirror>
Mein settings.xml Profile-Abschnitt wie folgt aussehen:
<profile>
<id>nexus</id>
<!--Enable snapshots for the built in central repo to direct -->
<!--all requests to nexus via the mirror -->
<repositories>
<repository>
<id>central</id>
<url>http://central</url>
<releases><enabled>true</enabled></releases>
<snapshots><enabled>true</enabled></snapshots>
</repository>
</repositories>
<pluginRepositories>
<pluginRepository>
<id>central</id>
<url>http://central</url>
<releases><enabled>true</enabled></releases>
<snapshots><enabled>true</enabled></snapshots>
</pluginRepository>
</pluginRepositories>
</profile>
Obwohl ich alles eingerichtet habe, wie im Tutorial beschrieben, gibt meine IDE an, dass das Artefakt in der gegebenen Abhängigkeit nicht gefunden werden kann.
fehlgeschlagen Ziel auf Projekt ArtifactTwo auszuführen: nicht Abhängigkeiten für Projekt com.company:ArtifactTwo:jar:0.0.3-SNAPSHOT lösen kann: Failure com.company:artifactone:jar:0.0 zu finden. 5 in http://mylocalnexus.com/nexus/repository/maven-public/ wurde in das lokale Repository zwischengespeichert, Auflösung erneut versucht wird, wird erst das Aktualisierungsintervall von Nexus oder Updates
Warum in „maven-public“ für die Abhängigkeit ist es suchen gezwungen ist, abgelaufen ist? Hat jemand eine Ahnung, wie man das zur Arbeit bringt?