External library als OSGI-Modul

Hallo,
vielleicht hat jemand dies schon einmal gemacht? Ich hab gerade verzweifelt 6h lang einige Ansätze probiert, die aber alle nicht klappten. Sei es mittels maven und/oder teilweise per Hand.

Warum sollte man dies tun? Leider können einige libraries per pom.xml (maven) nicht ohne weiteres eingebunden werden. Oder man hat eine Opensource-library, die man anpassen muss. Es ist aber nicht praktikabel, bzw. stört die aktuell OSGI Struktur, wenn man diese ‘Jars’ nur “händisch” an die einzelnen Module einbindet. Jemand anderes, der dies cloned oder forked, hat dann die einbinde-Problematik.

So wie ich das verstanden habe, wird das bei bnd als wrapping bezeichnet?

Vielen Dank.

Hallo Paul,

hier auf die Schnelle ein Beispiel (derzeit noch im Pull-Request), bei dem ich auch eine Jar-Datei selbst erstellen musste - vielleicht hilft dir das weiter:

Ansonsten… um welche Library geht’s denn?

Gruß,
Stefan

Hallo Stefan,

das sieht ja ziemlich gut aus. probiere ich mal aus. :slight_smile: Das OSGI macht mich noch etwas fertig…
es geht im konkreten um diesen Fork der pi4j library… hier werden nur mehr als 2 spis unterstützt…
ist die grundlage für einige module von uns und ich wollte das vor den Merge-Requests noch sauber ziehen.

Schönen Gruß

Paul

Ja… das ist leider ein großer Nachteil von OSGi.

Hier noch eine kleine Anregung zum Nachbauen:

Falls du nicht weiterkommst, gib bitte Bescheid, dann versuche ich es selbst einmal mit pi4j.