Wie erstelle ich eine Ivy-Abhängigkeit für lokale jars in Ihrem Projekt / lib?

8

Ich habe ein paar JAR-Dateien (von denen einige voneinander abhängig sind), und ich versuche, sie für mein Projekt zu verwalten.

Ich möchte kein "lokales" (user dir based) Repository erstellen, da ich möchte, dass andere Benutzer mein svn-Projekt auschecken und es ohne lokales / gemeinsames Repository-Setup ausführen können. Aus verschiedenen Gründen kann ich diese Dateien nicht zu dem tatsächlichen Repository hinzufügen, das wir verwenden.

Das Projekt hängt von diesen Dateien ab und ich verwende sie in SVN. In der Vergangenheit hatte ich meine normalen Efeu-Abhängigkeits-XML-Dateien. Diese Dateien verwenden eine XML-Einstellungsdatei, die auf das Remote-Repository verweist. In der Vergangenheit, in letzter Minute, hatte ich eine Build-Aufgabe, um diese Dateien aus einem lib-Ordner in den gebauten Ordner zu kopieren. Dies fühlt sich an wie ein gebrochener Missbrauch, der die Funktionen des efy-Resolvers ignoriert.

(ivy.xml und build.xml für 3 Buildable-Projekte verwenden dieselbe ivysettings.xml in einem anderen Basisverzeichnis.)

Ich fühle mich, als wäre ich zu 90% dort, worauf sollte ich meinen Dateisystem-Resolver in der Datei ivysettings.xml verweisen, um meine erste Lösung in der Resolver-Kettenprüfung für JAR-Dateien in projectdir / lib zu finden?

    
krade 05.02.2010, 20:14
quelle

1 Antwort

3

Haben Sie sich die Buildliste für die Efeuaufgabe angesehen?

Sie können damit die Reihenfolge festlegen, in der Ihre 3 Module erstellt werden. Während jedes Modul erstellt wird, kann es in einem lokalen Repository veröffentlichen, um sicherzustellen, dass das jar rechtzeitig für das nächste Modul in der Kette vorhanden ist.

%Vor%

Ihre Einstellungsdatei kann von allen Projekten gemeinsam genutzt werden. Es besagt, dass die von Ihnen erstellten Module lokal verfügbar sind, alles andere stammt aus dem Standard-Repository, das allen Benutzern Ihres Projekts (in diesem Fall Maven) zur Verfügung steht.

%Vor%

Schließlich können Sie, wenn Sie extern veröffentlichen, die Aufgabe ivy install verwenden, um die Module, die Sie bereits lokal veröffentlicht haben, in das Repository des endgültigen Repositorys zu kopieren

    
Mark O'Connor 07.02.2010 14:18
quelle

Tags und Links