Konvertiere ivy.xml in pom.xml

8

Ich habe eine efeu.xml - Ссылка Ich habe auch die Jar-Datei mit Bezug auf diese efeu.xml. Was ich brauche, ist ein Mechanismus, um dieses Projekt in mein Maven Repo zu importieren und es in meinem Maven Projekt zu verwenden. SO, wenn ich in der Lage bin, die efeu.xml in pom.xml zu konvertieren, könnte ich es vielleicht funktionieren. Gibt es einen Mechanismus, durch den ich das erreichen kann? Ich suche nach etwas wie einem Maven-Plugin, um diese Aufgabe zu erfüllen. Ich weiß, dass es Möglichkeiten gibt, die efeu.xml und die build.xml zu bearbeiten, aber das möchte ich nicht, da das Projekt in einem privaten Repo ist.

    
Vineeth Mohan 24.02.2012, 05:46
quelle

2 Antworten

16

Was Sie wirklich tun müssen, ist die Veröffentlichung der JAR-Dateien, die vom ANT-Projekt erstellt wurden, in Ihrem Maven-Repository.

%Vor%

Ich weiß, dass Sie den ANT-Build nicht ändern wollen, aber das Erstellen eines zusätzlichen "Publish" -Ziels wird Ihre ANT- und Maven-Projekte richtig integrieren.

Die zwei Jar-Artefakte, die von Ihrem modifizierten ANT-Build veröffentlicht wurden, können normalerweise wie folgt konsumiert werden:

%Vor%

Änderungen an Ihrem ANT Build

ivy.xml

Die wichtigsten Änderungen betreffen Ihren Veröffentlichungsbereich:

%Vor%

Anmerkungen:

  • Das ANT-Projekt wird nun 3 Dateien, jar, sources jar und das Maven POM
  • veröffentlichen
  • In maven-Quellen haben jars ein "classifier" -Attribut, das auf "sources" (keine Quelle) gesetzt ist. Um dies zu erleichtern, fügen wir ein Efeu-Zusatzattribut hinzu.
  • Keine Notwendigkeit für Versions- und Statusinformationen in der Kopfzeile info . Dies wird durch den Veröffentlichungsschritt hinzugefügt.

build.xml

%Vor%

Anmerkungen:

  • Die Aufgabe deliver ist optional, wird aber für Ihre Efeu-Datei empfohlen enthält dynamische Revisionen, wie "neuste.freigabe" oder "neueste.integration".
  • Die Aufgabe makepoms bietet eine leistungsstarke Unterstützung für das Konvertieren von Efeu-Konfigurationen in Maven-Bereiche . Gilt nicht in Ihrem Fall, aber ein Anreiz, mehr über Efeu zu lernen: -)
  • Die Aufgabe publish verwendet ein spezifiziertes Muster, um Dateien zu finden, die in Efeu-Dateien angegeben sind Publikationen Abschnitt.

ivysettings.xml

Hier konfigurieren Sie den Speicherort der Repositorys und Anmeldeinformationen, die vom Publish-Build-Ziel verwendet werden sollen.

%Vor%

Anmerkungen:

  • Ivy-Downloads verwenden den konfigurierten Standard-Resolver nexus-central .
  • Die Efeu-Veröffentlichungsaufgabe wird in das Nexus-Repository mit dem Namen nexus-deploy verschoben
  • Der Sicherheitsbereich in diesem Beispiel entspricht Nexus Maven. Wäre für andere Repo-Manager anders.
Mark O'Connor 24.02.2012, 10:37
quelle
3

Apache Ant selbst bietet eine Aufgabe, dies zu tun - makepom . Immer hilft, die Dokumentation zu konsultieren!

    
Perception 24.02.2012 06:27
quelle

Tags und Links