Konvertieren einer JAR-Datei in ein OSGi-Bundle
Um eine Java Archive (JAR)-Datei in ein OSGi-Bundle zu konvertieren, führen Sie die Schritte zum Erstellen eines OSGi-Bundles aus der angehängten junit-4.4.jar aus, wie in diesem Artikel unten beschrieben.
Beschreibung description
Umgebung
Experience Manager
Problem/Symptome
Wie konvertiere ich eine vorhandene Java Archive-Datei (JAR) in ein Open Service Gateway Initiative-Bundle (OSGi)?
Auflösung resolution
-
Erstellen Sie zunächst die Manifestdatei einer JAR-Datei:
code language-none Manifest-Version: 1.0 Created-By: myself Bundle-ManifestVersion: 2 Bundle-Name: JUnit 4.4 bundle Bundle-Description: Package junit 4.4 in an OSGi bundle Bundle-Version: 4.4.0 Bundle-ClassPath: .,junit-4.4.jar Bundle-SymbolicName: org.junit.framework Export-Package: junit.framework,junit.extensions,org.junit.runner,org.junit,junit.textui
- Der Header
Bundle-ClassPath
ist so eingestellt, dass die ursprüngliche JAR-Datei unverändert eingebettet werden kann. Stellen Sie sicher, dass der zugehörige Wert mit dem Dateinamen der JAR-Datei übereinstimmt, die Sie in das Bundle einbetten möchten. Export-Package
ist eine Liste von Paketen, die im JAR enthalten sind und die Sie anderen im OSGi-Container ausgeführten Bundles zur Verfügung stellen möchten.
- Der Header
-
JAR-Datei
Rufen Sie die JAR-Datei ab.
-
Erstellen Sie die Bundle-JAR-Datei, indem Sie den folgenden Befehl ausführen:
code language-none jar cvfm junit-4.4-bundle.jar manifest.txt junit-4.4.jar
Wobei
manifest.txt
der Name der oben erstellten Manifestdatei ist.
Das war es - die resultierende JAR-Datei ist ein OSGi-Bundle, das die in Export-Package
oben aufgeführten Pakete exportiert und dabei die Klassen des eingebetteten junit-4.4.jar.
verwendet