Getting started with OSGi

Heute hab ich mich mal an das Thema OSGi und Eclipse Equinox gewagt. Ich habe mich für Equinox entschieden, weil ich dazu bereits ein Buch habe. Alternativ gibt es z.b noch Apache Felix.

Herunterladen kann man Eclipse Equinox unter Download Eclipse Equinox ich habe die aktuelle Version (Luna Fri, 6 Jun 2014 — 12:15 (-0400)) heruntergeladen und ausgepackt.

Die ersten Versuche waren nicht wirklich erfolgreich.

java -jar plugins\org.eclipse.osgi_3.10.0.v20140606-1445.jar -console

OSGi hat gestartet aber nichts ist passiert. Unter plugins/configuration habe ich dann ein Log-file mit folgendem Inhalt gefunden.

!SESSION 2014-07-18 23:43:02.652 -----------------------------------------------
eclipse.buildId=unknown
java.version=1.8.0
java.vendor=Oracle Corporation
BootLoader constants: OS=win32, ARCH=x86, WS=win32, NL=de_DE
Command-line arguments:  -console

!ENTRY org.eclipse.osgi 4 0 2014-07-18 23:43:03.011
!MESSAGE Could not find bundle: org.eclipse.equinox.console
!STACK 0
org.osgi.framework.BundleException: Could not find bundle: org.eclipse.equinox.console
	at org.eclipse.core.runtime.internal.adaptor.ConsoleManager.checkForConsoleBundle(ConsoleManager.java:58)
	at org.eclipse.core.runtime.adaptor.EclipseStarter.startup(EclipseStarter.java:333)
	at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:232)
	at org.eclipse.core.runtime.adaptor.EclipseStarter.main(EclipseStarter.java:209)

!ENTRY org.eclipse.osgi 4 0 2014-07-18 23:43:03.027
!MESSAGE Application error
!STACK 1
java.lang.IllegalStateException: Unable to acquire application service. Ensure that the org.eclipse.core.runtime bundle is resolved and started (see config.ini).
	at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:78)
	at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:382)
	at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:236)
	at org.eclipse.core.runtime.adaptor.EclipseStarter.main(EclipseStarter.java:209)

Kurz im Internet nachgeschaut und folgendes gefunden:
http://stackoverflow.com/questions/11161871/org-osgi-framework-bundleexception-could-not-find-bundle-org-eclipse-equinox-c

Also eine config.ini unter plugins/configuration angelegt und die Namen der JAR’s (unter plugins/ zu finden) angepasst.

Der Inhalt hat dann so ausgesehen:

osgi.bundles=file\:org.eclipse.equinox.console_1.1.0.v20140131-1639.jar@start,file:\org.apache.felix.gogo.runtime_0.10.0.v201209301036.jar@start,file:\org.apache.felix.gogo.shell_0.10.0.v201212101605.jar@start

Damit konnte ich dann Equinox starten und habe eine Console gesehen.

Voila, der erste Schritt ist geschafft.

Schreib einen Kommentar