Mam przekierowanie wszystkich maven repozytorium dostęp do Artifactory z następującym ~/.m2/settings.xml
:Jak uzyskać wszystkie zdalne repozytoria hierarchii projektów?
<?xml version="1.0" encoding="UTF-8"?>
<settings xsi:schemaLocation="http://maven.apache.org/SETTINGS/1.1.0 http://maven.apache.org/xsd/settings-1.1.0.xsd" xmlns="http://maven.apache.org/SETTINGS/1.1.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<!-- unclear what version changes -> use 1.1.0 because it's higher -->
<servers>
<server>
<id>central</id>
<username>admin</username>
</server>
<server>
<id>snapshots</id>
<username>admin</username>
</server>
</servers>
<mirrors>
<mirror>
<id>artifactory</id>
<name>artifactory</name>
<mirrorOf>*</mirrorOf>
<url>https://[hostname]:[port]/artifactory/remote-repos/</url>
</mirror>
</mirrors>
<profiles>
<profile>
<id>artifactory</id>
<repositories>
<repository>
<id>central</id>
<name>remote-repos</name>
<url>https://[hostname]:[port]/artifactory/remote-repos</url>
<snapshots>
<enabled>false</enabled>
<updatePolicy>interval:25200</updatePolicy>
</snapshots>
</repository>
<repository>
<id>snapshots</id>
<name>remote-repos</name>
<url>https://[hostname]:[port]/artifactory/remote-repos</url>
<snapshots />
</repository>
</repositories>
<pluginRepositories>
<pluginRepository>
<id>central</id>
<name>remote-repos</name>
<url>https://[hostname]:[port]/artifactory/remote-repos</url>
<snapshots>
<enabled>false</enabled>
<updatePolicy>interval:25200</updatePolicy>
</snapshots>
</pluginRepository>
<pluginRepository>
<id>snapshots</id>
<name>remote-repos</name>
<url>https://[hostname]:[port]/artifactory/remote-repos</url>
<snapshots />
</pluginRepository>
</pluginRepositories>
</profile>
</profiles>
<activeProfiles>
<activeProfile>artifactory</activeProfile>
</activeProfiles>
</settings>
a więc trzeba dodać dodatkowe zdalnymi repozytoriami, które są określone przez projekt (i jego projektów dziecko) do Artifactory instancji. Używam obecnie
find . -name pom.xml -exec grep -B 5 -C 5 '<repository>' {} +
który nie jest bardzo przydatna w przypadku, gdy adres URL jest zmienna i zadeklarowane w innym miejscu i nie pominąć duplikaty. To nie jest najgorsza rzecz na świecie, ale być może jest dostępna poprawa.
Następujące nie działa:
mvn versions:display-dependency-updates
nie wyświetla zdalnych repozytoriówmvn dependency:list-repositories
działa tylko dopóki pierwsza zależność nie może być pobierany w przypadku pełnomocnika jest włączone tak, że mam do figury gdzie można otrzymać go z badanych dodać zdalne repozytorium do Artifactory lub przenieść~/.m2/settings.xml
bok - mniej przydatny niż poleceniafind
powyżej
SHO rozwiązanie Działają rekurencyjnie, tzn. zawierają wszystkie repozytoria we wszystkich projektach potomnych i projektach potomnych dla dzieci, itp.
Ma to sens, że rozwiązania nie wymagają pobierania zależności bezpośrednio ze zdalnego repozytorium bez pośrednika, ponieważ Chciałbym je natychmiast przekazać za pośrednictwem proxy Maven - nie jest to jednak wymagane.
Niektóre z repozytoriów mogłyby zostać uznane w zależności. To sprawi, że pobierzesz te zależności, aby znaleźć wszystkie potrzebne repozytoriom. –
@StanislavBashkyrtsev Nie rozumiem, co masz na myśli przez "Niektóre repozytoriów można zadeklarować w zależnościach" (sekcja "zależności" POM?) . –
Masz zależność. Zależność ma swoją pom. W tej pom możesz mieć sekcję repozytoriów. Aby wiedzieć, że musisz najpierw pobrać tę zależność. –