OSGi Allgemeine Verständnissfragen

hueck

Mitglied
Hallo,

wie hier schon angesprochen http://www.java-forum.org/plattform...practices-bestehendes-programm-migrieren.html ist es meine Aufgabe eine bestehende Anwendung in ein OSGi Bundle zu überführen. Da das thema für mich absolutes neuland ist habe ich hier ein paar allgemein Fragen bei denen ich mir nicht sicher bin ob ich das alles richtig verstanden habe:

1. OSGi ist ja nur eine "Beschreibung" (ähnlich wie Java) und bekannte Vertreter sind Equinox, Apache Felix und Knoplerfish, das heisst sie alle entsprechen der OSGi beschreibung, richtig?

Was sind dann allerdings die Unterschiede?

2. Über die Equinox Shell ( ist das die richtige Bezeichnung für java -jar org.eclipse.osgi_<version>.jar ?) kann ich ja bundles installieren, uninstallieren, etc...
Passiert das beim starten von Eclipse? Im weitesten Sinne sind Eclipse Plugins ja OSGi Bundles. Also erst wird die Shell geladen und dann alle Plugins/Bundles aus der Shell gestartet...

3. Welche bekannten OSGi Vertreter neben Eclipse gibt es noch?

Vielen Dank im vorraus.
 
G

Gast2

Gast

OSGi ist die Beschreibung/Schnittstelle, aber keine Referenzimplementierung.
OSGi ? Wikipedia

Zu 1) Es gibt eine OSGi-Spec an die sich jede Implementierung halten muss und die Funktionen unterstützen muss, sonst ist es keine OSGi-Implementierung .
OSGi Alliance | Specifications / HomePage

Des Weiteren gibt es noch eine Erweiterung der Spec mit jede Mengen Funktionen die jede OSGi-Implementierung implementieren kann oder nicht. Das ist der Unterschied die eine Implementierung hat mehr Funktionen zur Verfügung die andere weniger.

Equinox hat zum Beispiel den Extensions Points Mechanismus.
Eclipse Extension Points and Extensions - Tutorial

Zu 2) Das ist eine ganz normale OSGi-Console
siehe 3.1
OSGi Modularity - Tutorial
 
Zuletzt bearbeitet von einem Moderator:

sn1x

Mitglied
Oh stimmt, aber die OSGi Alliance liefert als Vorlage eine Referenzimplentierung.
Sorry, wollte keine falschen Informationen verbreiten... :noe:

Beim lesen des Artikels habe ich noch das gefunden:

Kommerzielle R4 zertifizierte OSGi Service Platforms (Frameworks) sind folgende (Stand Februar 2010):
ProSyst Software mBedded Server
Makewave Knopflerfish Pro
Samsung OSGi R4 Solution
HitachiSoft SuperJ Engine Framework
KT OSGi Service Platform (KOSP)

Liste der OSS OSGi-Frameworks:
Equinox – getrieben von Eclipse (Enterprise)
mBedded Server Equinox Edition – OSS Produkt von ProSyst basierend auf dem Equinox-Framework von Eclipse (ergänzt um zusätzliche Features)
Oscar – ursprünglich akademisches Projekt, wird inzwischen als Apache Felix weiterentwickelt
Apache Felix – Community-Projekt der Apache Software Foundation
Knopflerfish – ursprünglich kommerzielles Embedded-Produkt von Gatespace
Concierge – leichtgewichtige OSGi Implementierung für mobile und eingebettete Systeme
Jadabs – rudimentärer Ansatz, Zitat: „A dynamic lightweight container for small devices in a distributed environment“
 

Ähnliche Java Themen


Oben