2016-09-05 3 views
1

Ich konvertiere Subclipse, um mit Eclipse Tycho und Maven zu bauen.Eclipse-Plugin mit Maven-Abhängigkeiten für Bibliotheken von Drittanbietern

Die Subklipse hängt von einigen JAR-Dateien von Drittanbietern ab, die keine Eclipse-Plugins sind, also in keinem p2-Repository existieren. Momentan schließe ich diese nur in einen lib-Ordner innerhalb des Plugins ein.

Da diese JAR-Dateien in Maven vorhanden sind, hatte ich gehofft, dass durch die Konvertierung der Plugins zum Erstellen mit Maven Maven-Abhängigkeiten verwendet werden können. IOW, das Plugin würde eine pom.xml haben, in der ich Maven-Abhängigkeiten verwendet habe, um die Drittanbieter-Jars aufzunehmen, die im Plugin enthalten sein müssen. Im Grunde würde es nur automatisieren, was ich in den lib-Ordner des Plugins aufnehmen muss.

Ist das möglich? Ich habe versucht, das zu tun, was ich oben gesagt habe, als ich gebaut habe, sah ich kein Anzeichen, dass Maven/Tycho versuchte, die Abhängigkeiten zu holen. Ich stelle mir vor, es ist, weil wenn die Verpackung ist Eclipse-Plugin es nur auf die Eclipse-Konfigurationsdateien für die Abhängigkeit Informationen.

Dank

Antwort

0

Ebene hinzuzufügen (ohne OSGi-Metadaten) JAR-Dateien in Ihren Ordner zur Laufzeit, können Sie eine <execution> der maven-dependency-plugin angeben, um sie zu holen. Sie müssen jedoch Ihre MANIFEST.MF Bundle-Classpath Direktive aktualisieren, wenn sich eine Version ändert.

Es ist normalerweise besser, nach OSGi-fähigen JARs zu suchen oder einen zusätzlichen Aufwand zu machen, um vorhandene Bibliotheken als OSGi-Bundles/p2-Artefakte wie Eclipse Orbit oder JBoss Tools Locus zu packen.

+0

Ich bin in diesem Fall ich die Drittanbieterbibliotheken verwalten und die Artefakte veröffentlichen. Ist es leicht, dass Maven für jedes Glas ein OSGI-Artefakt erstellt und gleichzeitig veröffentlicht? Irgendwelche Zeiger? –

+0

Sie müssen das 'maven-bundle-plugin' verwenden, damit es eine MANIFEST.MF für Sie entsprechend der von Ihnen konsumierten Pakete generiert. Dann können Sie die Maven OSGi Bundles in Tycho konsumieren, wie in https://wiki.eclipse.org/Tycho/Target_Platform#.22POM_dependencies_consider.22 erläutert – Mickael

0

Haben Sie versucht, die folgenden zu tun, nachdem die Abhängigkeiten der pom.xml-Datei hinzufügen?

  • Ausbau-> Sauber
  • Rechtsklick auf Projekt: Maven-> Update Abhängigkeiten
  • Rechtsklick auf Projekt: Maven-> Update Projektkonfiguration
Verwandte Themen