Frage

hat jemand weiß, wie ich in Ivy etwas wie Spiegel / mirrorOf in Maven angeben? Ich arbeite mit einem lokalen Maven-Proxy (Nexus) und das Werkzeug müssen, welche des übergeordneten Repositories sollte Nexus Proxy-Zugriff wird angeben.

In Maven ich einfach:

<mirrors>
  <mirror>
    <id>central-mirror</id>
    <mirrorOf>central</mirrorOf>
    <url>http://localhost:8081/content/repositories/central</url>
  </mirror>
</mirrors>

, aber ich kann nicht diese Art von Option in Ivy finden.

War es hilfreich?

Lösung

Ich glaube nicht, eine solche Option direkt existiert. Sie könnten versuchen, eine Kette Implementierung und Ihre Nexus-Repository in Führung gebracht, die in dieser Kette von zentraler Bedeutung. Wenn ich verstehe, wie Ketten korrekt funktionieren (das ist ein großer if), Ivy Ihr Repository vor zentralen überprüfen wird, so lange, wie Ihr Repository die relevanten Inhalte zentral hat, wird nicht benötigt.

Sehen Sie die Tutorial .

Andere Tipps

Sie benötigen einen öffentlichen Resolver zu erstellen, das tut, was Sie (mehr Details wollen @ Ivy docs )

Grundsätzlich speichern Sie die folgenden Schnipsel unter $ USERHOME / .ivy2 / ivysettings-public.xml. Dies sollte den Trick tun.

<ivysettings> 
  <resolvers> 
    <ibiblio name="public" m2compatible="true" root="http://localhost:8081/content/groups/public"/> 
  </resolvers> 
</ivysettings>
  • Die unmodifizierte Standard-Installation hat 'Nexus' in der URL!
  • Wenn Sie Artefakte bereitstellen müssen, ich glaube, die Lösung etwas ähnlich dem gemeinsamen Resolver zu tun ist (siehe Link zu docs oben), aber ich habe nicht versucht.
  • ändere ich Ihre lokale URL zu dem Standard ‚content / Gruppen / public‘, die da in dem Maven-Einstellungen Fragmente besser zu lösen über alle Anrufe durch den Spiegel vorbei ist, nicht nur die, die ins Zentrum. Fügen Sie einfach alle zusätzlichen Repositories zu dieser Gruppe in der Nexus-Benutzeroberfläche, wie sie kommen, und Sie sollten in Ordnung sein.
  • Wenn Ihr Projekt lädt sie eigene ivysettings ist, die nicht die Standardeinstellungen nicht einlöst, dann werden diese Einstellungen nicht geladen werden, und Sie sind wieder zurück auf Null: (

Dies ist, wie ich habe es funktioniert (Die Antwort von @Heron nicht für mich arbeiten):

Erstellen Sie eine Datei mit folgendem Inhalt:

<ivysettings>
  <settings defaultResolver="default"/>
  <property name="m2-pattern" value="${user.home}/.m2/repository/[organisation]/[module]/[revision]/[module]-[revision](-[classifier]).[ext]" override="false" />
  <resolvers>
    <chain name="default">
        <ibiblio name="public" m2compatible="true" root="http://nexus-server:8081/nexus/content/groups/public"/>
    </chain>
  </resolvers>
</ivysettings>

Refere, um es von der Ameise Build:

<ivy:settings file="/Users/wdb/.ivy2/ivysettings-public.xml" />

Ivy ist nun in der Lage Abhängigkeiten von meiner Nexus-Repository zu lösen.

Ich habe das gleiche getan, aber mit Archiva, was ist sehr ähnlich. Sie haben nur in einer neuen Kette folgendes zu erklären:

<chain name="private">
<url name="archiva" m2compatible="true">
  <ivy pattern="http://..../archiva/repository/internal/[organisation]/[module]/[revision]/ivy.xml" /> 
  <artifact pattern="http://..../archiva/repository/internal/[organisation]/[module]/[revision]/[artifact]-[revision].[ext]" /> 
  <artifact pattern="http://..../archiva/repository/internal/[organisation]/[module]/[revision]/[artifact].[ext]" /> 
  </url>
</chain>

Archiva verwaltet Maven 2 Repositories (Artefakte mit Maven Metadaten) es ist nicht in der Regel Metadaten Ivy (ivy.xml). Und das Maven 2 Layout ist [Organisation] / [Modul] / [Revision] / [Artefakt] -.. [Revision] [ext]

Wir haben nur die folgenden Informationen zur Verfügung zu stellen

<url name="archiva" m2compatible="true">
  <artifact pattern="http://..../archiva/repository/internal/[organisation]/[module]/[revision]/[artifact]-[revision].[ext]" /> 
  </url>
</chain>

oder

  <settings defaultResolver="archiva"/>
  <resolvers>
<ibiblio name="archiva" m2compatible="true" root="http://.../archiva/repository/internal/[organization]/[module]/[revision]/[artifact]-[revision].[ext]"/>
  </resolvers>
Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top